From 1eb2d6f6253c578735da81a6e7671ae7773d05e0 Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Sun, 4 Mar 2007 15:00:50 +0000 Subject: made Script optionally take ownership and dispose input text svn-id: r25973 --- engines/parallaction/parser.cpp | 9 +++++++-- engines/parallaction/parser.h | 7 +++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/engines/parallaction/parser.cpp b/engines/parallaction/parser.cpp index c41452481a..ee420b2e5f 100644 --- a/engines/parallaction/parser.cpp +++ b/engines/parallaction/parser.cpp @@ -29,8 +29,13 @@ namespace Parallaction { char _tokens[20][40]; -Script::Script(const char* s) : _src(s) { +Script::Script(const char* s, bool disposeSource) : _src(s), _disposeSource(disposeSource) { + _pos = const_cast(_src); +} +Script::~Script() { + if (_disposeSource) + free(const_cast(_src)); } char *Script::readLine(char *buf, size_t bufSize) { @@ -39,7 +44,7 @@ char *Script::readLine(char *buf, size_t bufSize) { char v2 = 0; for ( _si = 0; _si