while (len--) {
char c = *msg++;
+ if (!c)
+ break;
ret++;
if (c == '\n')
break;
- if (!c)
- return 0;
}
return ret;
}
if (fmt == CMIT_FMT_ONELINE)
break;
}
- if (fmt == CMIT_FMT_ONELINE) {
- /* We do not want the terminating newline */
- if (buf[offset - 1] == '\n')
- offset--;
- }
- else {
- /* Make sure there is an EOLN */
- if (buf[offset - 1] != '\n')
- buf[offset++] = '\n';
- }
+ while (offset && isspace(buf[offset-1]))
+ offset--;
+ /* Make sure there is an EOLN for the non-oneline case */
+ if (fmt != CMIT_FMT_ONELINE)
+ buf[offset++] = '\n';
buf[offset] = '\0';
return offset;
}