Pārlūkot izejas kodu

HPCC-11636 Updated to fix raw output format

Also fixed raw output of FlushingStringBuffer::encodeData().

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
Anthony Fishbeck 11 gadi atpakaļ
vecāks
revīzija
ddda0b565b
1 mainītis faili ar 7 papildinājumiem un 7 dzēšanām
  1. 7 7
      common/thorhelper/roxiehelper.cpp

+ 7 - 7
common/thorhelper/roxiehelper.cpp

@@ -851,14 +851,14 @@ void FlushingStringBuffer::append(const char *data)
 
 void FlushingStringBuffer::append(double data)
 {
-    if (mlFmt==MarkupFmt_XML)
+    if (isRaw)
+        append(sizeof(data), (char *)&data);
+    else
     {
         StringBuffer v;
         v.append(data);
-        appendf("%s", v.str());
+        append(v.length(), v.str());
     }
-    else
-        append(sizeof(data), (char *)&data);
 }
 
 void FlushingStringBuffer::append(unsigned len, const char *data)
@@ -900,7 +900,9 @@ void FlushingStringBuffer::encodeString(const char *x, unsigned len, bool utf8)
 void FlushingStringBuffer::encodeData(const void *data, unsigned len)
 {
     static char hexchar[] = "0123456789ABCDEF";
-    if (mlFmt==MarkupFmt_XML)
+    if (isRaw)
+        append(len, (const char *) data);
+    else
     {
         const byte *field = (const byte *) data;
         for (int i = 0; i < len; i++)
@@ -909,8 +911,6 @@ void FlushingStringBuffer::encodeData(const void *data, unsigned len)
             append(hexchar[field[i] & 0x0f]);
         }
     }
-    else
-        append(len, (const char *) data);
 }
 
 void FlushingStringBuffer::addPayload(StringBuffer &s, unsigned int reserve)