From ab234cf90cd0b31354fddb9ee1f562a3eb630cdc Mon Sep 17 00:00:00 2001 From: rubidium Date: Thu, 17 Jul 2008 13:47:04 +0000 Subject: (svn r13715) -Fix [FS#2129]: C-like strings had to be rebound each time they were printed, otherwise the text could change due to the few number of slots that could be used to bind. -Codechange: remove all BindCString and related functions and replace it by RAW_STRING which prints the C-string raw pointer that is on the 'print stack'. --- src/strgen/strgen.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/strgen/strgen.cpp') diff --git a/src/strgen/strgen.cpp b/src/strgen/strgen.cpp index 3057a88f0..1a874cfa8 100644 --- a/src/strgen/strgen.cpp +++ b/src/strgen/strgen.cpp @@ -490,6 +490,7 @@ static const CmdStruct _cmd_structs[] = { {"SKIP", EmitSingleChar, SCC_SKIP, 1, 0}, {"STRING", EmitSingleChar, SCC_STRING, 1, C_CASE}, + {"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, 0}, // Numbers {"COMMA", EmitSingleChar, SCC_COMMA, 1, 0}, // Number with comma @@ -717,7 +718,8 @@ static const CmdStruct *TranslateCmdForCompare(const CmdStruct *a) strcmp(a->cmd, "STRING2") == 0 || strcmp(a->cmd, "STRING3") == 0 || strcmp(a->cmd, "STRING4") == 0 || - strcmp(a->cmd, "STRING5") == 0) { + strcmp(a->cmd, "STRING5") == 0 || + strcmp(a->cmd, "RAW_STRING") == 0){ return FindCmd("STRING", 6); } -- cgit v1.2.3-70-g09d2