SCI32: kString: Move variable declaration to prevent problems

with object lifetimes.
This commit is contained in:
Lars Skovlund 2011-10-30 13:54:55 +01:00
parent e20626dfa8
commit 40e22d9e33

View file

@ -697,13 +697,15 @@ reg_t kString(EngineState *s, int argc, reg_t *argv) {
case 6: { // Cpy case 6: { // Cpy
const char *string2 = 0; const char *string2 = 0;
uint32 string2Size = 0; uint32 string2Size = 0;
Common::String string;
if (argv[3].segment == s->_segMan->getStringSegmentId()) { if (argv[3].segment == s->_segMan->getStringSegmentId()) {
SciString *string = s->_segMan->lookupString(argv[3]); SciString *sstr;
string2 = string->getRawData(); sstr = s->_segMan->lookupString(argv[3]);
string2Size = string->getSize(); string2 = sstr->getRawData();
string2Size = sstr->getSize();
} else { } else {
Common::String string = s->_segMan->getString(argv[3]); string = s->_segMan->getString(argv[3]);
string2 = string.c_str(); string2 = string.c_str();
string2Size = string.size() + 1; string2Size = string.size() + 1;
} }