THRIFT-1351 Compiler does not care about binary strings
authorJens Geyer <jensg@apache.org>
Wed, 21 Aug 2013 21:55:29 +0000 (23:55 +0200)
committerJens Geyer <jensg@apache.org>
Wed, 21 Aug 2013 21:55:29 +0000 (23:55 +0200)
Patch: Wade Simmons & Jens Geyer

compiler/cpp/src/generate/t_js_generator.cc

index e27f5de..9f7fa04 100644 (file)
@@ -1259,7 +1259,7 @@ void t_js_generator::generate_deserialize_field(ofstream &out,
           name;
         break;
       case t_base_type::TYPE_STRING:
-        out << "readString()";
+        out << (((t_base_type*)type)->is_binary() ? "readBinary()" : "readString()");
         break;
       case t_base_type::TYPE_BOOL:
         out << "readBool()";
@@ -1498,7 +1498,7 @@ void t_js_generator::generate_serialize_field(ofstream &out,
           "compiler error: cannot serialize void field in a struct: " + name;
         break;
       case t_base_type::TYPE_STRING:
-        out << "writeString(" << name << ")";
+        out << (((t_base_type*)type)->is_binary() ? "writeBinary(" : "writeString(") << name << ")";
         break;
       case t_base_type::TYPE_BOOL:
         out << "writeBool(" << name << ")";