dect
/
linux-2.6
Archived
13
0
Fork 0

[BATTERY] power_supply_leds: use kasprintf

Use kasprintf instead of kmalloc()-strcpy()-strcat().

Cc: Anton Vorontsov <cbou@mail.ru>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
This commit is contained in:
Akinobu Mita 2007-11-17 19:55:58 +09:00 committed by Anton Vorontsov
parent 25f12141e2
commit 4d24473c43
1 changed files with 7 additions and 18 deletions

View File

@ -10,6 +10,7 @@
* You may use this code as per GPL version 2
*/
#include <linux/kernel.h>
#include <linux/power_supply.h>
#include "power_supply.h"
@ -48,28 +49,20 @@ static int power_supply_create_bat_triggers(struct power_supply *psy)
{
int rc = 0;
psy->charging_full_trig_name = kmalloc(strlen(psy->name) +
sizeof("-charging-or-full"), GFP_KERNEL);
psy->charging_full_trig_name = kasprintf(GFP_KERNEL,
"%s-charging-or-full", psy->name);
if (!psy->charging_full_trig_name)
goto charging_full_failed;
psy->charging_trig_name = kmalloc(strlen(psy->name) +
sizeof("-charging"), GFP_KERNEL);
psy->charging_trig_name = kasprintf(GFP_KERNEL,
"%s-charging", psy->name);
if (!psy->charging_trig_name)
goto charging_failed;
psy->full_trig_name = kmalloc(strlen(psy->name) +
sizeof("-full"), GFP_KERNEL);
psy->full_trig_name = kasprintf(GFP_KERNEL, "%s-full", psy->name);
if (!psy->full_trig_name)
goto full_failed;
strcpy(psy->charging_full_trig_name, psy->name);
strcat(psy->charging_full_trig_name, "-charging-or-full");
strcpy(psy->charging_trig_name, psy->name);
strcat(psy->charging_trig_name, "-charging");
strcpy(psy->full_trig_name, psy->name);
strcat(psy->full_trig_name, "-full");
led_trigger_register_simple(psy->charging_full_trig_name,
&psy->charging_full_trig);
led_trigger_register_simple(psy->charging_trig_name,
@ -120,14 +113,10 @@ static int power_supply_create_gen_triggers(struct power_supply *psy)
{
int rc = 0;
psy->online_trig_name = kmalloc(strlen(psy->name) + sizeof("-online"),
GFP_KERNEL);
psy->online_trig_name = kasprintf(GFP_KERNEL, "%s-online", psy->name);
if (!psy->online_trig_name)
goto online_failed;
strcpy(psy->online_trig_name, psy->name);
strcat(psy->online_trig_name, "-online");
led_trigger_register_simple(psy->online_trig_name, &psy->online_trig);
goto success;