From: David Herrmann Date: Tue, 7 Apr 2015 11:11:18 +0000 (+0200) Subject: device: fix sysattr newline cutter X-Git-Tag: v226.4~1^2~513 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=aa70affbcd1849cc5a36b1387846752cec6eec1c device: fix sysattr newline cutter Right now, we always drop the last character of all values we write to sysfs. Fix this! --- diff --git a/src/libelogind/sd-device/sd-device.c b/src/libelogind/sd-device/sd-device.c index 0dd0e14ee..b828fa830 100644 --- a/src/libelogind/sd-device/sd-device.c +++ b/src/libelogind/sd-device/sd-device.c @@ -1781,8 +1781,8 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, value_len = strlen(_value); /* drop trailing newlines */ - while (value_len > 0 && _value[--value_len] == '\n') - _value[value_len] = '\0'; + while (value_len > 0 && _value[value_len - 1] == '\n') + _value[--value_len] = '\0'; /* value length is limited to 4k */ if (value_len > 4096)