Am 2012-11-30 10:17, schrieb Lars Hanisch:
Looks like the pointer returned by sscanf is not valid:
32: bool tComponent::FromString(const char *s)
33: {
34: unsigned int Stream, Type;
35: int n = sscanf(s, "%X %02X %7s %a[^\n]", &Stream, &Type,
language, &description); // 7 = MAXLANGCODE2 - 1
36: if (n != 4 || isempty(description)) {
37: free(description);
38: description = NULL;
39: }
40: stream = Stream;
41: type = Type;
42: return n >= 3;
43: }
From man sscanf:
The GNU C library supports a nonstandard extension that causes
the library to
dynamically allocate a string of sufficient size for input
strings for the %s
and %a[range] conversion specifiers.
This is the reason why it doesn't work with ulibc.
Gerald
_______________________________________________
vdr mailing list
vdr@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr