diff options
author | Filippos Karapetis | 2009-05-10 13:47:38 +0000 |
---|---|---|
committer | Filippos Karapetis | 2009-05-10 13:47:38 +0000 |
commit | 53f24f3e43f78e974367dfe2c87951e7d2589689 (patch) | |
tree | bf114ab85c20f8626d4d712b233d1f2710543360 /engines/sci/engine/message.cpp | |
parent | dd84aaf648b57220180b84a9aa0825d16bcea5bc (diff) | |
download | scummvm-rg350-53f24f3e43f78e974367dfe2c87951e7d2589689.tar.gz scummvm-rg350-53f24f3e43f78e974367dfe2c87951e7d2589689.tar.bz2 scummvm-rg350-53f24f3e43f78e974367dfe2c87951e7d2589689.zip |
Applied patch by waltervn to remove the length parameter from getText() and fixed a silly bug in getLength()
svn-id: r40421
Diffstat (limited to 'engines/sci/engine/message.cpp')
-rw-r--r-- | engines/sci/engine/message.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/engines/sci/engine/message.cpp b/engines/sci/engine/message.cpp index 6766224247..2bed850a31 100644 --- a/engines/sci/engine/message.cpp +++ b/engines/sci/engine/message.cpp @@ -93,22 +93,16 @@ int MessageState::getTalker() { return *(_engineCursor.index_record + 4); } -int MessageState::getText(char *buffer, int length) { - int offset; - if (_version == 2101) - offset = READ_LE_UINT16(_engineCursor.index_record + 2); - else - offset = READ_LE_UINT16(_engineCursor.index_record + 5); - +void MessageState::getText(char *buffer) { + int offset = READ_LE_UINT16(_engineCursor.index_record + ((_version == 2101) ? 2 : 5)); char *stringptr = (char *)_engineCursor.resource_beginning + offset; - strncpy(buffer, stringptr, length); - - return strlen(buffer); + strcpy(buffer, stringptr); } int MessageState::getLength() { - char buffer[500]; - return getText(buffer, sizeof(buffer)); + int offset = READ_LE_UINT16(_engineCursor.index_record + ((_version == 2101) ? 2 : 5)); + char *stringptr = (char *)_engineCursor.resource_beginning + offset; + return strlen(stringptr); } int MessageState::loadRes(int module) { |