Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#23 Synchronize has problems with \cssId{}

v3.6b
closed-fixed
nobody
5
2009-10-22
2009-10-22
Nathan Carter
No

The attached HTML file (once you put in the appropriate path to easy/load.js on your system) demonstrates the following problem:
I call jsMath.Process( document ); followed by jsMath.Synchronize( "my code" ); and my code is executed after MOST of the jsMath processing is complete, but not ALL. In the attached file, "my code" just pops up an alert box, which effectively pauses JavaScript processing, allowing you to see behind the alert box that jsMath processing is not yet complete. I am using Safari 4.0.4.
The problem only seems to manifest itself because the \cssId{} is there; replacing \cssId{foo}{3} with 3 fixes the problem. But of course that's not a solution; the \cssId{} feature is one I very much need in my application.

Discussion

  • Nathan Carter
    Nathan Carter
    2009-10-22

    demonstrates problem in bug report; replace path to easy/load.js with the one from your system

     
  • Nathan Carter
    Nathan Carter
    2009-10-22

    I should have stated that I'm using jsMath version 3.6b.

     
  • This was fixed in version 3.6c, so I would update to that. There was a subtle timing bug when jsMath.Process() is called more than once (as it is in your case -- once by your explicit call and once by easy/load.js) when an external file is autoloaded (as it is for cssId{}). I think that if you update, you will find that this works as expected. Let me know if that isn't the case.

    Davide

     
    • labels: --> Programming interface
    • milestone: --> v3.6b
    • status: open --> closed-fixed
     
  • Nathan Carter
    Nathan Carter
    2009-10-27

    Upgrading did fix the problem. Thanks!