P3Speller crashes with exception in Param::BoundsCheck()

Known Issues and Problems with BCI2000
Locked
jminett
Posts: 5
Joined: 08 Dec 2010, 23:22

P3Speller crashes with exception in Param::BoundsCheck()

Post by jminett » 13 Dec 2012, 03:16

I have recently made a fresh install of BCI2000 revision 4331, compiling it with Visual C++ 2010 Express on Windows 7 (Home Premium 64 bit). Note that I built against the version of Qt included with BCI2000. In particular, I built and then ran Operator, Signal Generator, P3SignalProcessing, and P3Speller --- I did not modify any of the source code. P3Speller crashes immediately with the following message:

2012-12-13T15:39:30 - Column index 1 out of range when accessing parameter
Function: Param::BoundsCheck()
File: ..\..\..\src\shared\types\Param.cpp
Line: 235
Terminating Application module.

Stepping through the source code in debug mode, I can trace the source of the problem to the nested loop on lines 181--184 in Localization.cpp. In particular, during the second pass through the outer loop (i.e., i == 1), the function Param::Value() is called from MutableParamRef::operator=() with parameters row == 0 and col == 1, resulting in an exception being thrown in Param::BoundsCheck() at line 235 in Param.cpp. Part of the call stack just before the exception is thrown is shown below:

Param::BoundsCheck(unsigned int row, unsigned int col) Line 235
Param::Value(unsigned int row, unsigned int col) Line 226
MutableParamRef::operator=(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & s) Line 491
Localization::AddLocalizations_(const char ** inLanguages, int inNumLanguages, const char ** inStrings, int inNumStrings) Line 184
...

Does anyone know of a solution to this issue?

With thanks in advance,
James

mellinger
Posts: 1341
Joined: 12 Feb 2003, 11:06

Re: P3Speller crashes with exception in Param::BoundsCheck()

Post by mellinger » 13 Dec 2012, 15:52

Hi,

thank you for your detailed bug report. The bug will be fixed ASAP.

Regards,
Juergen

jminett
Posts: 5
Joined: 08 Dec 2010, 23:22

Re: P3Speller crashes with exception in Param::BoundsCheck()

Post by jminett » 14 Dec 2012, 00:29

Thank you for your reply Juergen.

Just in case it helps, reverting to revision 4230, P3Speller runs just fine.

Best wishes,
James

mellinger
Posts: 1341
Joined: 12 Feb 2003, 11:06

Re: P3Speller crashes with exception in Param::BoundsCheck()

Post by mellinger » 20 Dec 2012, 12:09

The bug has been fixed on SVN.

Regards,
Juergen

jminett
Posts: 5
Joined: 08 Dec 2010, 23:22

Re: P3Speller crashes with exception in Param::BoundsCheck()

Post by jminett » 20 Dec 2012, 19:44

Many thanks Juergen.

With best wishes,
James

Locked

Who is online

Users browsing this forum: No registered users and 0 guests