[
https://issues.apache.org/jira/browse/THRIFT-2690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simon South updated THRIFT-2690:
--------------------------------
Attachment: thrift-2690-c_glib-fix-seg-fault-in-testthrifttestclient.patch
I've attached a second patch that fixes a seg fault in one of the c_glib unit
tests, unmasked by the stricter handling of typedef'd types.
> c_glib: Incorrect behaviour when serializing a map with typedef'd keys
> ----------------------------------------------------------------------
>
> Key: THRIFT-2690
> URL: https://issues.apache.org/jira/browse/THRIFT-2690
> Project: Thrift
> Issue Type: Bug
> Components: C glib - Compiler
> Affects Versions: 0.9.1
> Environment: Fedora 20 64-bit on x86_64
> Reporter: Simon South
> Priority: Minor
> Labels: c_glib, compiler
> Attachments:
> thrift-2690-c_glib-fix-seg-fault-in-testthrifttestclient.patch,
> thrift-2690-c_glib-resolve-typedef-when-serializing-map.patch
>
>
> This is the same issue reported in
> [THRIFT-2683|https://issues.apache.org/jira/browse/THRIFT-2683] but for
> _serializing_ maps.
> The compiler must resolve a typedef'd type to its underlying type before
> attempting to reason about it. By failing to do this, the current c_glib
> compiler will in most cases generate incorrect code for serializing a map
> when either its keys or its values are of a typedef'd type. The client
> receives garbage data instead of the map's actual contents.
> The attached patch fixes this. It should be applied after the patch for
> [THRIFT-1266|https://issues.apache.org/jira/browse/THRIFT-1266].
> No test case, yet again, but the server half of the integration test suite
> will trigger this bug without the patch applied.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)