ScriptEase:ISDK Newsletter

May 15, 2003

In This Issue

""

Updated support documents
 

""

Last call before release freeze
 

ISDK/C 5.00f Errata
 

ISDK/C 4.40f Errata
 

ISDK/C 4.30g Errata
 

ISDK/Java 5.00f Errata

Other Newsletters

DevSpace Developer Support

For more information and resources, visit ScriptEase: ISDK DevSpace online.

Download Center

For latest updates and extensions, visit the ISDK Download Center.

"" Updated support documents

A few documents have been updated recently that pertain to many users of the ScriptEase ISDK:

  • Maximizing performance of small scripts on many threads - This item on the support site, which began as a comparison of Mozilla and ScriptEase performance, discusses the options available for maximizing the performance of many small event-driven scripts sharing global configurations and running in multiple threads. This document provides more understanding of how the jseopt.h settings affect performance, how to use seShareReadObject, and how to inherit standard libraries and scripts via global._prototype.
  • ECMAScript for Python developers - This document will help your fellow developers, who may be coming from a Python background, ease into use of our ECMAScript engine.
  • Implementing VoiceXML (VXML) for ScriptEase v5 - This document, which has helped many developers implement the ECMAScript portion of VoiceXML, has now been updated for the version 5 ScriptEase API. Even if you're not doing VXML you may want to read it for some interesting ideas about using ._prototyp vs .__parent__ for inheritance?

Last call before release freeze

We will soon be freezing code for the next release (5.00g). We will then enter a phase of testing, testing, and more testing; this usually takes a few weeks to get through all platforms and build options.

Over the last few months we have received some very good suggestions on improving the ScriptEase ISDK and supporting tools. If there is some area that has been giving you difficulty, or any suggestions that would help with your use of the ISDK, then now is the last chance to let us know before we freeze the code. Send your last-call suggestions to http://support.nombasxxx.com/.


Have a question about how to use ScriptEase:ISDK? Let Dr. Scripter know at http://support.nombasxxx.com/


 Errata

   ISDK/C 5.00f

  • COMOBJ leaks resources: COMOBJ can leaks resources when working with type libraries and pass-by-ref COM objects. Over time total memory use will grow. [Details]
  • try/catch grows internal stack: Each try/catch will leave one element on the internal stack. The stack space is restored whenever the containing function returns. But if the function does not return then many try/catch blocks will eventually throw an out-of-stack error. [Details]
  • SElib.dynamicLink() expects string lengths to remain constant: If a DLL (or shared object or code fragment) receives a string datum from SElib.dynamicLink() and changes the data in that string so that its length is shorter than the original string, we will assume the length has not changed and store data beyond the end of the string into the passed parameter. [Details]
  • Memory corruption on %s error messages: If an error messages is generated with a format string containing the "%s" formatting type, and if the string that %s refers to is very long, then an assert will be generated (in debug mode), or a memory-overwrite will likely cause a crash (in release mode). [Details]

 Errata

   ISDK/C 4.40f

  • SElib.dynamicLink() expects string lengths to remain constant: If a DLL (or shared object or code fragment) receives a string datum from SElib.dynamicLink() and changes the data in that string so that its length is shorter than the original string, we will assume the length has not changed and store data beyond the end of the string into the passed parameter. [Details]
  • Memory corruption on %s error messages: If an error messages is generated with a format string containing the "%s" formatting type, and if the string that %s refers to is very long, then an assert will be generated (in debug mode), or a memory-overwrite will likely cause a crash (in release mode). [Details]

 Errata

   ISDK/C 4.30g

  • SElib.dynamicLink() expects string lengths to remain constant: If a DLL (or shared object or code fragment) receives a string datum from SElib.dynamicLink() and changes the data in that string so that its length is shorter than the original string, we will assume the length has not changed and store data beyond the end of the string into the passed parameter. [Details]
  • Stack corruption on %s error messages: If an error messages is generated with a format string containing the "%s" formatting type, and if the string that %s refers to is very long, then an assert will be generated (in debug mode), or a stack-overwrite will likely cause a crash (in release mode). [Details]

 Errata

   ISDK/Java 5.00f

ScriptEase: ISDK is a product of Nombas, Inc. Visit us at ../index.htm