aboutsummaryrefslogtreecommitdiff
path: root/translate-all.c
diff options
context:
space:
mode:
authorMichael Tokarev <mjt@tls.msk.ru>2014-05-24 00:47:39 +0400
committerMichael Tokarev <mjt@tls.msk.ru>2014-05-26 10:40:04 +0400
commitd09b8fa161ed6a61339d4d0870f76f13c033b2a3 (patch)
tree396818d311043e3e327604297fbdd9530ec8b19c /translate-all.c
parent42119fa3568dc7e8c82447c861678a5987d06d91 (diff)
libcacard: fix wrong array expansion logic
The currrent code in libcacard/vcard_emul_nss.c:vcard_emul_options() has a weird bug in variable usage around expanding opts->vreader array. There's a helper variable, vreaderOpt, which is first needlessly initialized to NULL, next, conditionally, only we have to expand opts->vreader, receives array expansion from g_renew(), and next, even if we don't actually perform expansion, the value of this variable is assigned to the actual array, opts->vreader, which was supposed to be expanded. So, since we expand the array by READER_STEP increments, only once in READER_STEP (=4) the code will work, in other 3/4 times it will fail badly. Fix this by not using this temp variable when expanding the array, and by dropping the useless =NULL initializer too - if it wasn't in place initially, compiler would have warned us about this problem at the beginning. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'translate-all.c')
0 files changed, 0 insertions, 0 deletions