[Scummvm-cvs-logs] CVS: scummvm/scumm/smush chunk.cpp,1.7,1.8
Max Horn
fingolfin at users.sourceforge.net
Wed Oct 23 05:13:03 CEST 2002
Update of /cvsroot/scummvm/scummvm/scumm/smush
In directory usw-pr-cvs1:/tmp/cvs-serv3375
Modified Files:
chunk.cpp
Log Message:
don't use strdup
Index: chunk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/chunk.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- chunk.cpp 15 Sep 2002 19:28:34 -0000 1.7
+++ chunk.cpp 23 Oct 2002 12:12:19 -0000 1.8
@@ -24,6 +24,7 @@
#include "common/engine.h" // for debug, warning, error
#include "common/file.h"
+#include "common/str.h"
#include <stdio.h> // for FILE, fopen, fclose, fseek and ftell
#include <string.h> // for memcpy
@@ -33,20 +34,18 @@
implements reference counting, so that ::file_Chunk does not leak memory !
*/
class FilePtr {
- char * _filename;
+ ScummVM::String _filename;
File _ifs;
int32 _refcount;
int32 _curPos;
public:
- FilePtr(const char * fname, const char * directory) : _refcount(1), _curPos(0) {
+ FilePtr(const char * fname, const char * directory) : _filename(fname), _refcount(1), _curPos(0) {
debug(9, "FilePtr created for %s", fname);
- _filename = strdup(fname);
_ifs.open(fname, directory);
if(_ifs.isOpen() == false) error("FilePtr unable to read file %s", fname);
}
~FilePtr() {
- debug(9, "FilePtr destroyed for %s", _filename);
- free(_filename);
+ debug(9, "FilePtr destroyed for %s", _filename.c_str());
_ifs.close();
}
int32 tell() {
More information about the Scummvm-git-logs
mailing list