Also use -EINVAL instead of -1.
SVN-Revision: 31353
{
char *ptr = output;
char *end = output + len;
{
char *ptr = output;
char *end = output + len;
+
+ if (!output || !in)
+ return -EINVAL;
+
while (*in) {
if (*in < 0) {
int i = -*in++;
while (i-- > 0) {
if (ptr >= end)
while (*in) {
if (*in < 0) {
int i = -*in++;
while (i-- > 0) {
if (ptr >= end)
*ptr++ = *in++;
}
} else if (*in > 0) {
int i = *in++;
while (i-- > 0) {
if (ptr >= end)
*ptr++ = *in++;
}
} else if (*in > 0) {
int i = *in++;
while (i-- > 0) {
if (ptr >= end)
*ptr++ = *in;
}
in++;
}
}
*ptr++ = *in;
}
in++;
}
}