Bug SS-1227
3 votes

TableRegion - Reproducible hard crash

Created by Martin Kraska on 10/4/2014 3:19 PM Last Updated by Davide on 11/24/2014 2:09 PM
%
 (hrs)
Logged: 0   (hrs)

 Description

 

 

 

 

In th attached file: If I delete the argument q in the function call Pre() and go back to the canvas, then SMath crashes instead of throwing the usual error message (that Pre(3) is not defined. Likewise, if I change the definition to remove that argument, then I get a crash as well.

Beschreibung:
  Stopped working

Problemsignatur:
  Problemereignisname:    CLR20r3
  Problemsignatur 01:    smathstudio_desktop.exe
  Problemsignatur 02:    0.97.5346.33369
  Problemsignatur 03:    53f63c27
  Problemsignatur 04:    mscorlib
  Problemsignatur 05:    2.0.0.0
  Problemsignatur 06:    530efe95
  Problemsignatur 07:    c43
  Problemsignatur 08:    59
  Problemsignatur 09:    System.FormatException
  Betriebsystemversion:    6.1.7601.2.1.0.256.48
  Gebietsschema-ID:    1031

Lesen Sie unsere Datenschutzbestimmungen online:
  http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0407

Wenn die Onlinedatenschutzbestimmungen nicht verfügbar sind, lesen Sie unsere Datenschutzbestimmungen offline:
  C:\Windows\system32\de-DE\erofflps.txt
 

SMath Studio: SMath Studio Desktop 0.97.5346.24640, portable, x86
OS: Microsoft Windows NT 6.1.7601 Service Pack 1 (Microsoft Windows 7 Professional , x64)
Screen: 1920x1080 px, 96x96 dpi
Localization: separator=<semicolon>; decimal symbol=<comma>; system decimal symbol=<period>; language=ENG
Frameworks: CLR 2.0.50727.5483

    installed versions:
    v2.0.50727    2.0.50727.5420 SP2
    v3.0    3.0.30729.5420 SP2
    v3.5    3.5.30729.5420 SP1
    v4    
        Client    4.5.50709
        Full    4.5.50709
    v4.0    
        Client    4.0.0.0

    Davide (Monday, November 24, 2014 2:08 PM) #

Confirmed. The conversion is applied just to a subset of data, will be fixed.

Thank you Andrey!

    smath (Monday, November 24, 2014 12:12 PM) #

Davide, please check this issue.

When you parsing a file use:
operandOrFunctionName.Replace(GlobalParams.DecimalSymbolStandard, GlobalParams.DecimalSymbol)
 
When you saving a file you need to do the following:
operandOrFunctionName.Replace(GlobalParams.DecimalSymbol, GlobalParams.DecimalSymbolStandard)
 
Please, let me know if you have any questions.

    smath (Monday, November 24, 2014 11:56 AM) #

Reproduced. The reason of the issue investigated.

Issue happens because of Table Region - it incorrectly stored decimal symbol in final *.sm file.

F.e. it uses <td>S:F,R</td> instead of correct <td>S:F.R</td>. Note: standard decimal symbol in *.sm files is "." so ","  cannot be used there. But developer must ensure desired decimal symbol restored on the client on file opening.

    Martin Kraska (Sunday, November 23, 2014 11:25 PM) #

I switched off part of the regions. You have enable all regions (Ctrl-A, context menu). Then you may reproduce the crash.

    brotjob (Sunday, November 23, 2014 11:07 PM) #

Maybe not so reproducible. I don't get a crash loading the second attachment. In BeamSol I get an error "Der Wert ist oberhalb der Grenze für positive Zahlen." with a red frame but no crash. I use your portable version 0.97 b5346 on w8.1 x64

I do get the crash for the first example.

    Martin Kraska (Sunday, November 23, 2014 3:19 PM) #

Here is another example, the second attachment will immediately crash SMath Studio if loaded with auto-calculate on.