Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows: debugging IDE in VS broken if Help-files contain Japanese tutorial #2444

Closed
bagong opened this issue Oct 29, 2016 · 2 comments
Closed

Comments

@bagong
Copy link
Contributor

bagong commented Oct 29, 2016

Running SC in Visual Studio debugger breaks if non-ASCII characters are contained in SCDoc (Japanese tutorial)

@bagong
Copy link
Contributor Author

bagong commented Nov 1, 2016

Running a debug-version of SC with the Japanese tutorial contained in SCDoc produces this error in the post-Window:

*** Welcome to SuperCollider 3.8.0-beta1. *** For help press Ctrl-D.
SCDoc: Indexing help-files...
caught exception in primitive Meta_SCDoc:prParseFile
ERROR: device or resource busy: device or resource busyERROR: Primitive '_SCDoc_ParseFile' failed.
Failed.
RECEIVER:
class SCDoc (0000026AC96E3840) {
  instance variables [19]
    name : Symbol 'SCDoc'
    nextclass : instance of Meta_SCDocEntry (0000026AC9FDE2C0, size=19, set=5)
    superclass : Symbol 'Object'
    subclasses : nil
    methods : nil
    instVarNames : nil
    classVarNames : instance of SymbolArray (0000026AC96E39C0, size=8, set=2)
    iprototype : nil
    cprototype : instance of Array (0000026AC96E3A80, size=8, set=3)
    constNames : nil
    constValues : nil
    instanceFormat : Integer 0
    instanceFlags : Integer 0
    classIndex : Integer 418
    classFlags : Integer 0
    maxSubclassIndex : Integer 418
    filenameSymbol : Symbol 'C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\SCClassLibrary\SCDoc\SCDoc.sc'
    charPos : Integer 9623
    classVarIndex : Integer 61
}

PROTECTED CALL STACK:
    Meta_MethodError:new    0000026AC97EA780
        arg this = PrimitiveFailedError
        arg what = Failed.
        arg receiver = SCDoc
    Meta_PrimitiveFailedError:new   0000026AC97F0D40
        arg this = PrimitiveFailedError
        arg receiver = SCDoc
    Object:primitiveFailed  0000026AC919E0C0
        arg this = SCDoc
    Meta_SCDoc:parseFileMetaData    0000026AC96E4F00
        arg this = SCDoc
        arg dir = C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource
        arg path = Tutorials\Mark_Polishook_tutorial\Japanese_version\01.schelp
        var fullPath = C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\01.schelp
        var subpath = Tutorials\Mark_Polishook_tutorial\Japanese_version\01
        var entry = nil
        var x = nil
    a FunctionDef   0000026AC96E7F40
        sourceCode = "<an open Function>"
        arg f = PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\01.schelp)
    ArrayedCollection:do    0000026ACA1FCDC0
        arg this = [ PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\00.schelp), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\01.schelp), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\02.schelp), PathName(C:\Users\Rainer\Pr...etc...
        arg function = a Function
        var i = 1
    PathName:filesDo    0000026ACA168440
        arg this = PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\)
        arg func = a Function
    ArrayedCollection:do    0000026ACA1FCDC0
        arg this = [ PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\Japanese_version\) ]
        arg function = a Function
        var i = 0
    PathName:filesDo    0000026ACA168440
        arg this = PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\)
        arg func = a Function
    ArrayedCollection:do    0000026ACA1FCDC0
        arg this = [ PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\A-Practical-Guide\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Getting-Started\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\JITLib\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\Mark_Polishook_tutorial\) ]
        arg function = a Function
        var i = 3
    PathName:filesDo    0000026ACA168440
        arg this = PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Tutorials\)
        arg func = a Function
    ArrayedCollection:do    0000026ACA1FCDC0
        arg this = [ PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Classes\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Guides\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\images\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Other\), PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\Super...etc...
        arg function = a Function
        var i = 7
    PathName:filesDo    0000026ACA168440
        arg this = PathName(C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource)
        arg func = a Function
    ArrayedCollection:do    0000026ACA1FCDC0
        arg this = [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource, C:\Users\Rainer\AppData\Local\SuperCollider\downloaded-quarks\MathLib\HelpSource ]
        arg function = a Function
        var i = 0
    Meta_SCDoc:indexAllDocuments    0000026AC96E6CC0
        arg this = SCDoc
        arg clearCache = false
        var now = 8.1392461
        var key = Classes/String
        var doc = SCDocEntry("Tutorials/Mark_Polishook_tutorial/Japanese_version/00", "00", "Mark Polishook tutorial (JP)")
        var nonHelpFiles = [ [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\BrokenLink.html, BrokenLink.html ], [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Browse.html, Browse.html ], [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\lang-sc.js, lang-sc.js ], [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\OldHelpWrapper.html, OldHelpWrapper.html ], [ C:\Users\R...etc...
        var undocClasses = IdentitySet[ Pretty, QPen, SetBuf, QScope, PowerOfTwoBlock, WiiMoteGUI, EmbedOnce, PfinQuant, MarkovSetN, HIDDeviceDispatcher, ShouldNotImplementError, GenLaguerre, QHLayout, DbFaderWarp, QVLayoutView, SystemNFunc, DeprecatedError, PointArray, Penv, RingBuffer, PlusFreqScopeWindow, SynthDefOld, SubclassResponsibilityError, MIDISysNoDataDispatcher, WeighBag, QLineLayout, ListDUGen, HIDElementProtoDispatcher, FuzzyDictionary, ScopeOut2, RK, IdentityMarkovSet, QScope2, QQuartzComposerView, QMultiSliderView, Te...etc...
        var additions = Dictionary[ (Classes/String -> [ C:\Users\Rainer\Projects\sc\supercollider\build_VS64_Db\Install\SuperCollider\HelpSource\Classes\String.ext.schelp ]) ]
    Meta_SCDoc:documents    0000026AC9711000
        arg this = SCDoc
    Meta_SCDoc:prepareHelpForURL    0000026AC9714F40
        arg this = SCDoc
        arg url = file:///C:/Users/Rainer/AppData/Local/SuperCollider/Help/Help.html
        var path = C:\Users\Rainer\AppData\Local\SuperCollider\Help\Help.html
        var targetBasePath = C:\Users\Rainer\AppData\Local\SuperCollider\Help
        var pathIsCaseInsensitive = true
        var subtarget = Help
        var src = nil
        var c = nil
        var cmd = nil
        var doc = nil
        var destExist = true
        var destMtime = 1477746735
        var verpath = C:\Users\Rainer\AppData\Local\SuperCollider\Help\version
    a FunctionDef   0000026AC9671040
        sourceCode = "<an open Function>"
    Function:prTry  0000026AC9A77900
        arg this = a Function
        var result = nil
        var thread = a Routine
        var next = nil
        var wasInProtectedFunc = true

CALL STACK:
    MethodError:reportError   0000026ACAC8DDA8
        arg this = <instance of PrimitiveFailedError>
    < closed FunctionDef >   0000026ACAD40228
        arg error = <instance of PrimitiveFailedError>
    Integer:forBy   0000026ACB01D2D8
        arg this = 0
        arg endval = 0
        arg stepval = 2
        arg function = <instance of Function>
        var i = 0
        var j = 0
    SequenceableCollection:pairsDo   0000026ACB820AE8
        arg this = [*2]
        arg function = <instance of Function>
    Scheduler:seconds_   0000026ACB820C08
        arg this = <instance of Scheduler>
        arg newSeconds = 8.1548839
    Meta_AppClock:tick   0000026ACB820E48
        arg this = <instance of Meta_AppClock>
        var saveClock = <instance of Meta_SystemClock>
    Process:tick   0000026ACB820F68
        arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Primitive '_SCDoc_ParseFile' failed.
Failed.
RECEIVER: SCDoc

@mossheim
Copy link
Contributor

This will be fixed by #2861.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants