From: Chris Tallon Date: Sun, 14 Aug 2005 16:00:12 +0000 (+0000) Subject: Fix for getStringReply to return a difference between an empty X-Git-Tag: r0-0-9~9 X-Git-Url: https://git.vomp.tv/gitweb/?a=commitdiff_plain;h=bd212d4ace55deec338cb8590697b7f2846967f0;p=vompclient.git Fix for getStringReply to return a difference between an empty string and an error / no string --- diff --git a/vdr.cc b/vdr.cc index a8bb171..e1c6989 100644 --- a/vdr.cc +++ b/vdr.cc @@ -155,17 +155,21 @@ char* VDR::getStringReply() int dataLength = tcp->getDataLength(); - Log::getInstance()->log("VDR", Log::DEBUG, "Data length %u", dataLength); +// Log::getInstance()->log("VDR", Log::DEBUG, "GSR Data length %u", dataLength); - int count = 0; + if ((dataLength == 4) && (p[0] == '\0')) + { + Log::getInstance()->log("VDR", Log::DEBUG, "GSR returning null no string returned"); + free(p); + return NULL; // no string returned + } char* returnText; int tLength; - tLength = strlen((char*)&p[count]); + tLength = strlen((char*)p); returnText = new char[tLength + 1]; - strcpy(returnText, (char*)&p[count]); - count += tLength + 1; + strcpy(returnText, (char*)p); free(p);