smalltalk: Fix TBinaryProtocol readString for empty strings


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@763037 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/st/thrift.st b/lib/st/thrift.st
index 251202f..6883539 100644
--- a/lib/st/thrift.st
+++ b/lib/st/thrift.st
@@ -288,9 +288,12 @@
 		elemType: self readByte;
 		size: self readI32! !
 
-!TBinaryProtocol methodsFor: 'reading' stamp: 'pc 10/26/2007 04:48'!
+!TBinaryProtocol methodsFor: 'reading' stamp: 'pc 02/07/2009 19:00'!
 readString
-	^ (transport read: self readI32) asString! !
+readString
+	| sz |
+	sz := self readI32.
+	^ sz > 0 ifTrue: [(transport read: sz) asString] ifFalse: ['']! !
 
 !TBinaryProtocol methodsFor: 'reading' stamp: 'pc 11/1/2007 04:22'!
 unsignedInt: val size: size