Re: Wierd omission in 4ge behaves in P-Code
Posted in 1997
Jake, You know you should quote version numbers! >From: Jacob Salomon <jake@apparel.net> >Date: Tue, 5 Aug 1997 20:22:06 GMT >X-Informix-List-Id: <news.41254> [...] >In my program, I do lots of formatting of data (for a Prodigy-plus label >printer but that's not important). In one case, after formatting the >data and inveigling the formatted data into an output string, the last >character of the string vanishes. So I ran the program under the >debugger. Nothing vanishes here. As P-Code? No problem. OK, desperate >measures are in order. I peppered the relevant code with calls to >errorlog() to display the data in progress. Suddenly it behaves again - >that last character shows up again! I managed to isolate it down to one >particular call - If I comment out this errorlog() call, the character >vanishes from the output. If I leave it in, I get that last character. [...] There were a couple of places, including errorlog(), where the I4GL libraries would dump a stray ASCII NUL '\\0' into the middle of a string, thus confusing the heck out of everybody and everything. As far as I know, all of these were fixed by the 4.15/6.03 release. But I suspect you're using one of the ante-diluvian versions such as 4.11. Oh, and the p-code stuff sometimes using "pointer + length" for processing data where the c-code stuff uses "pointer + search for terminal '\\0'", which can lead to the discrepancy. Time to upgrade! Yours, Jonathan Leffler (johnl@informix.com) #include <disclaimer.h> PS: Warning I do not reply to messages with anti-spam in the return path.