< Back To XBINDER Support

XBinder v1.4.x Change Log

The current production release version of the XBinder compiler is 1.4.4. The following changes have been made since the last patch release (1.4.3):

  • A #define is generated in the header file to define the total count of the entries in an enumeration. (XBI-985)

  • Some potential security issues are fixed. (XBI-980)

  • OSXMLStringClass is fixed for potential memory leak issue. (XBI-936)

  • Fixed a bug in decoding contents containing LF ('\n') character. (XBI-931)

  • Fixed a bug in the GUI program, xbindergui, in which the option "-all" is not added to the command line. (XBI-929)

  • Fixed a bug in run-time API rtxGetDateTime in which the returned local time is not correctly calculted when timezone is present in the OSNumDateTime structure.(XBI-896)(br />
  • Fixed duplicated anyAttribute generated for complexContent derived types. (XBI-834)

  • Fixed rtxStreamMemoryGetBuffer() to return correct buffer pointer when directBuffer is used. (XBI-833)

  • Added two run-time functions rtxDateIsValid() and rtxTimeIsValid(). Added range checking on date/time component fields. (XBI-825)

  • Added a #define for the max number of Choices in the generated C header file. (XBI-819)

  • Fixed a bug in the generated decode functions where the error stack may be reset and some decoding errors may be lost. (XBI-818)

  • Fixed a bug in the generated source files for namespace module. The generated header file for namespace module was not included in the corresponding c/cpp files that might cause compilation error. (XBI-788)

  • Added a method to relax namespace checking. To disable namespace checking, the user need to call rtxCtxtSetFlag (pctxt, OSXMLNOCMPNS) before calling decode. (XBI-802)

  • Provided Visual Studio 2005 project files for building run-time libraries. (XBI-803)

  • Fixed a bug in OSXSDAnyTypeClass constructors in which setValue() may crash since value.value is not initialized. (XBI-808)

The following changes were made between patch release 1.4.2 and 1.4.3:

  • Fixed a bug in which code generated with -noxmlns was missing types derived from xsd:anyType. (XBI-796)

  • Fixed problems with circular references when import statements did not include schemaLocation attribute (XBI-788)

  • Fixed a bug in fragment code generation, in which some generated functions use local variable 'elemName' that is not declared in these functions. (XBI-788)

  • Added an option -noNamedBits. This option enables using a regular list for a list of enumerated types. By default, the generated code creates a named bits structure because list of enumerated is frequently used to cretae a set of properties. .(XBI-779)

  • Fixed a bug in which an empty attribute is encoded. (XBI-793)

  • Fixed bugs in C++ test code generation involving derived types. (XBI-759)

  • Improved constraint checking. Added more facet tests.

  • Fixed a bug in which elements belonging to null namespace are encoded under a (non-null) default namespace.

  • Improved error handling on mandatory count in generated decode functions. In normal mode, the error is pushed on the stack and decoding continues; in lax mode, the mandatory count variable is not checked. (XBI-743)

  • Fixed memory leaks which were occurring on some decode failures. (XBI-741)

  • Fixed warnings generated by gcc compiler. (XBI-738)

  • Added options -genMakeLib and -genMakeDLL. Option genMakeLib generates code in makefile to put all objects into a static library. Option genMakeDLL generates code in makefile to build a shared object.

The following changes were made between patch release 1.4.0 and 1.4.2:

  • Fixed problem in detecting control characetrs in input stream. (PR# XBI-698)

  • Fixed problem in decoding XML messages containing CRCRLF line ending.(PR# XBI-704)

  • Fixed incorrect append function generated on array type. (PR# XBI-705)

  • Fixed macros defined in run-time header file osSysTypes.h. (PR# XBI-712)

  • Fixed backward compatibility option (-compat 1.3) to generate C++ code for derived types in the same way as it was done prior to the 1.4 release. This model was to inherit from C++ base classes that were declared as the base type in complexContent extensions. (PR# XBI-654)

  • Fixed memory free problem with repeating xsd:anyType element. (PR# XBI-681)

  • Fixed compilation errors that occurred when trying to build libraries from scratch using provided makefiles in a source code distribution package. (XBI-667)

  • Fixed a memory management error that would occur when using a dynamic encode buffer and encoding a very large document in memory. (XBI-660)

  • Fixed a compilation error in the generated code that occurred when generateing code for the G2S gaming standards schemas with the -sax switch enabled. (XBI-659)