smsutil: Prevent invalid access in cbs_decode_text

Valgrind was complaining about it like this:

==18099== Conditional jump or move depends on uninitialised value(s)
==18099==    at 0x4C32281: strspn
==18099==    by 0x41286B: cbs_decode_text (smsutil.c:4140)
==18099==    by 0x40675C: test_cbs_encode_decode (test-sms.c:1417)
This commit is contained in:
Slava Monich 2017-01-01 20:48:02 +03:00 committed by Denis Kenzior
parent a011fea4a4
commit a1df13a3bc
1 changed files with 5 additions and 4 deletions

View File

@ -4135,12 +4135,13 @@ char *cbs_decode_text(GSList *cbs_list, char *iso639_lang)
*/
for (; i < written; i++, bufsize++) {
if (unpacked[i] == '\r') {
int t;
int j;
t = strspn((const char *) unpacked + i,
"\r");
for (j = i + 1; j < written; j++)
if (unpacked[j] != '\r')
break;
if (t + i == written)
if (j == written)
break;
}