diff options
author | Max Horn | 2004-04-17 16:29:03 +0000 |
---|---|---|
committer | Max Horn | 2004-04-17 16:29:03 +0000 |
commit | 9defe4fc1880ab8926c5cdf167f35985c7ee9afc (patch) | |
tree | 6413d350e3d082b9324185a0e6798dd15fd8a58f /common/file.cpp | |
parent | ae50adfd310cc4304129e5c2b5de7ffc69ba229c (diff) | |
download | scummvm-rg350-9defe4fc1880ab8926c5cdf167f35985c7ee9afc.tar.gz scummvm-rg350-9defe4fc1880ab8926c5cdf167f35985c7ee9afc.tar.bz2 scummvm-rg350-9defe4fc1880ab8926c5cdf167f35985c7ee9afc.zip |
Removed XOR encoding stuff from File class; instead the new Scumm::XORFile class provides this functionality now
svn-id: r13597
Diffstat (limited to 'common/file.cpp')
-rw-r--r-- | common/file.cpp | 29 |
1 files changed, 1 insertions, 28 deletions
diff --git a/common/file.cpp b/common/file.cpp index 4bb6e94fad..24c8907002 100644 --- a/common/file.cpp +++ b/common/file.cpp @@ -132,7 +132,6 @@ void File::setDefaultDirectory(const Common::String &directory) { File::File() { _handle = NULL; _ioFailed = false; - _encbyte = 0; _name = 0; } @@ -141,7 +140,7 @@ File::~File() { delete [] _name; } -bool File::open(const char *filename, const char *directory, AccessMode mode, byte encbyte) { +bool File::open(const char *filename, const char *directory, AccessMode mode) { if (_handle) { debug(2, "File %s already opened", filename); return false; @@ -174,8 +173,6 @@ bool File::open(const char *filename, const char *directory, AccessMode mode, by return false; } - _encbyte = encbyte; - int len = strlen(filename); if (_name != 0) delete [] _name; @@ -263,19 +260,10 @@ uint32 File::read(void *ptr, uint32 len) { _ioFailed = true; } - if (_encbyte != 0) { - uint32 t_size = real_len; - while (t_size--) { - *ptr2++ ^= _encbyte; - } - } - return real_len; } uint32 File::write(const void *ptr, uint32 len) { - byte *tmp = 0; - if (_handle == NULL) { error("File is not open!"); return 0; @@ -284,25 +272,10 @@ uint32 File::write(const void *ptr, uint32 len) { if (len == 0) return 0; - if (_encbyte != 0) { - // Maybe FIXME: while it's efficient to do the encoding here, - // it not really nice for a write function to modify its input. - // Maybe we should work on a copy here... - tmp = (byte *)malloc(len); - for (uint32 i = 0; i < len; i ++) { - tmp[i] = ((const byte *)ptr)[i] ^ _encbyte; - } - ptr = tmp; - } - if ((uint32)fwrite(ptr, 1, len, _handle) != len) { clearerr(_handle); _ioFailed = true; } - if (_encbyte != 0) { - free(tmp); - } - return len; } |