...
...
...
Really? Constantin's code looks correct to me. He increments i once
more after failure.
Perhaps write it easier to read; i.e. in the same way as most error
return checks everywhere in the kernel:
for (i = 0; i < ARRAY_SIZE(alix_leds); i++) {
ret = led_classdev_register(...etc...);
if (ret < 0)
break;
}
if (ret < 0)
while (i--)
led_classdev_unregister(&alix_leds[i].cdev);
Or while (--i >= 0)
or for (i--; i >= 0; i--)
--
Stefan Richter
-=====-==--- =--- ==---
http://arcgraph.de/sr/
--