THRIFT-2158 Compact, JSON, and SimpleJSON protocols are not working correctly

Patch: Jens Geyer
diff --git a/lib/go/thrift/compact_protocol.go b/lib/go/thrift/compact_protocol.go
index ba5f722..74d36d0 100644
--- a/lib/go/thrift/compact_protocol.go
+++ b/lib/go/thrift/compact_protocol.go
@@ -719,8 +719,7 @@
 	switch byte(t) & 0x0f {
 	case STOP:
 		return STOP, nil
-	case COMPACT_BOOLEAN_FALSE:
-	case COMPACT_BOOLEAN_TRUE:
+	case COMPACT_BOOLEAN_FALSE, COMPACT_BOOLEAN_TRUE:
 		return BOOL, nil
 	case COMPACT_BYTE:
 		return BYTE, nil
diff --git a/lib/go/thrift/serializer_test.go b/lib/go/thrift/serializer_test.go
index ca8fb0e..0f3f7d7 100644
--- a/lib/go/thrift/serializer_test.go
+++ b/lib/go/thrift/serializer_test.go
@@ -145,7 +145,7 @@
 	var protocol_factories map[string]ProtocolFactory
 	protocol_factories = make(map[string]ProtocolFactory)
 	protocol_factories["Binary"] = NewTBinaryProtocolFactoryDefault()
-//	protocol_factories["Compact"] = NewTCompactProtocolFactory() - not working right now, see THRIFT-2158 
+	protocol_factories["Compact"] = NewTCompactProtocolFactory()
 	//protocol_factories["SimpleJSON"] = NewTSimpleJSONProtocolFactory() - write only, can't be read back by design
 	protocol_factories["JSON"] = NewTJSONProtocolFactory()