-
Type:
Bug
-
Status: Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 0.9.1
-
Fix Version/s: 0.9.2
-
Component/s: C glib - Compiler
-
Environment:
Fedora 20 64-bit on x86_64
-
Patch Info:Patch Available
This is the same issue reported in 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.
No test case, yet again, but the server half of the integration test suite will trigger this bug without the patch applied.
- requires
-
THRIFT-1266 generated C code for iterating over nested maps is wrong
-
- Closed
-