View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0002050 | FSSCP | multiplayer | public | 2009-11-24 22:57 | 2011-06-27 13:45 |
| Reporter | FUBAR-BDHR | Assigned To | The_E | ||
| Priority | normal | Severity | block | Reproducibility | have not tried |
| Status | resolved | Resolution | fixed | ||
| Product Version | 3.6.11 | ||||
| Fixed in Version | 3.6.13 | ||||
| Summary | 0002050: Standalones crashing - new problem. Looks fs2_open log file related | ||||
| Description | builds worked yesterday so something must have changed. Getting ERANGE: String error. Please Report. Trying to put into 32 byte buffer: fs2_openship_get_indexed_subsys.log Which is 34 characters if I counted correctly. I don't think the procedure name is supposed to be added to fs2_open though. | ||||
| Additional Information | 3.6.11 r5685. Worked in 5677. Pretty sure it worked in 5679. Info attached. | ||||
| Tags | No tags attached. | ||||
|
2009-11-24 22:57
|
standalone_logfile.txt (3,108 bytes)
ERANGE: String error. Please Report.
Trying to put into 32 byte buffer:
fs2_openship_get_indexed_subsys.log
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! SCP_DumpStack + 260 bytes
<no module>! Error + 229 bytes
<no module>! scp_strcpy_s + 297 bytes
<no module>! scp_strcpy_s<32> + 53 bytes
<no module>! cf_search_root_path + 493 bytes
<no module>! cf_build_file_list + 105 bytes
<no module>! cf_build_secondary_filelist + 166 bytes
<no module>! cfile_init + 398 bytes
<no module>! game_init + 286 bytes
<no module>! game_main + 505 bytes
<no module>! WinMain + 330 bytes
<no module>! __tmainCRTStartup + 358 bytes
<no module>! WinMainCRTStartup + 15 bytes
<no module>! RegisterWaitForInputIdle + 73 bytes
Locals:
+ filename 0x00e77197 "cfilesystem.cpp" const char *
line 556 int
+ format 0x00e79d98 "%s: String error. Please Report.
Trying to put into %d byte buffer:
%s" const char *
+ assertString "ERANGE: String error. Please Report.
Trying to put into 32 byte buffer:
fs2_openship_get_indexed_subsys.log
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! SCP_DumpStack + 260 bytes
<no module>! Error + 229 bytes
<no module>! scp_strcpy_s + 297 bytes
<no module>! scp_strcpy_s<32> + 53 bytes
<no module>! cf_search_root_path + 493 bytes
<no module>! cf_bu std::basic_string<char,std::char_traits<char>,std::allocator<char> >
val 1 int
+ callStack {m_stackFrames={...} } SCP_DebugCallStack
+ args 0x00000000 <Bad Ptr> char *
Locals up one level:
+ filename 0x00e77197 "cfilesystem.cpp" const char *
line 556 int
+ format 0x00e79d98 "%s: String error. Please Report.
Trying to put into %d byte buffer:
%s" const char *
+ assertString "ERANGE: String error. Please Report.
Trying to put into 32 byte buffer:
fs2_openship_get_indexed_subsys.log
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! SCP_DumpStack + 260 bytes
<no module>! Error + 229 bytes
<no module>! scp_strcpy_s + 297 bytes
<no module>! scp_strcpy_s<32> + 53 bytes
<no module>! cf_search_root_path + 493 bytes
<no module>! cf_bu std::basic_string<char,std::char_traits<char>,std::allocator<char> >
val 1 int
+ callStack {m_stackFrames={...} } SCP_DebugCallStack
+ args 0x00000000 <Bad Ptr> char *
+ file 0x00e77180 "c:\fs2_open\code\cfile\cfilesystem.cpp" const char *
line 556 int
+ strDest 0x031e21e8 "" char *
sizeInBytes 32 unsigned int
+ strSource 0x0012f144 "fs2_openship_get_indexed_subsys.log" const char *
bufferLeft 0 unsigned int
+ pSource 0x0012f164 "log" const char *
+ pDest 0x031e2208 "�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������" char *
Locals up 2 levels:
+ file 0x00e77180 "c:\fs2_open\code\cfile\cfilesystem.cpp" const char *
line 556 int
+ strDest 0x031e21e8 "" char [32]&
+ strSource 0x0012f144 "fs2_openship_get_indexed_subsys.log" const char *
|
|
|
OK this may be the strangest bug in the history of FS2_Open. This error seems to be cause by renaming the fs2_open.log file. I renamed it to fs2_openship_get_indexed_subsys.log so I could copy it up to my file server and attach it to another Mantis issue. When I created the new builds and ran them it picked up the renamed log file instead of creating a new fs2_open.log. I deleted the renamed log file and it runs just fine. Now for the even stranger part. This is reproducible. As a test I just renamed fs2_open.log to fs2_open1234567890123456789012345.log. Standalone crashed as soon as I tried to run it. Deleted that log and it ran fine. Update: Standalone not required. |
|
|
Any file in the DATA dirs that is a recognizable extension for FSO to handle will cause this issue if it's filename exceeds the Range Length. That it just so happens to be a log file in this case is purely incidental. |
|
|
This particular issue can be solved by removing .log from the list of extensions recognized by FSO. Doing that seems to have no other repercussions. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2009-11-24 22:57 | FUBAR-BDHR | New Issue | |
| 2009-11-24 22:57 | FUBAR-BDHR | File Added: standalone_logfile.txt | |
| 2009-11-25 04:48 | FUBAR-BDHR | Note Added: 0011340 | |
| 2009-11-25 05:18 | FUBAR-BDHR | Note Edited: 0011340 | |
| 2009-11-25 05:30 | Zacam | Note Added: 0011341 | |
| 2009-11-25 05:32 | Zacam | Status | new => confirmed |
| 2011-06-24 04:40 | Zacam | Category | --------- => multiplayer |
| 2011-06-27 13:25 | The_E | Note Added: 0012730 | |
| 2011-06-27 13:45 | The_E | Status | confirmed => resolved |
| 2011-06-27 13:45 | The_E | Fixed in Version | => 3.6.13 |
| 2011-06-27 13:45 | The_E | Resolution | open => fixed |
| 2011-06-27 13:45 | The_E | Assigned To | => The_E |