- fPropSets[URX_ISWORD_SET] = new UnicodeSet(gIsWordPattern, *status);
- fPropSets[URX_ISSPACE_SET] = new UnicodeSet(gIsSpacePattern, *status);
- fPropSets[URX_GC_EXTEND] = new UnicodeSet(gGC_ExtendPattern, *status);
- fPropSets[URX_GC_CONTROL] = new UnicodeSet(gGC_ControlPattern, *status);
- fPropSets[URX_GC_L] = new UnicodeSet(gGC_LPattern, *status);
- fPropSets[URX_GC_V] = new UnicodeSet(gGC_VPattern, *status);
- fPropSets[URX_GC_T] = new UnicodeSet(gGC_TPattern, *status);
- fPropSets[URX_GC_LV] = new UnicodeSet(gGC_LVPattern, *status);
- fPropSets[URX_GC_LVT] = new UnicodeSet(gGC_LVTPattern, *status);
+ fPropSets[URX_ISWORD_SET] = new UnicodeSet(UnicodeString(TRUE, gIsWordPattern, -1), *status);
+ fPropSets[URX_ISSPACE_SET] = new UnicodeSet(UnicodeString(TRUE, gIsSpacePattern, -1), *status);
+ fPropSets[URX_GC_EXTEND] = new UnicodeSet(UnicodeString(TRUE, gGC_ExtendPattern, -1), *status);
+ fPropSets[URX_GC_CONTROL] = new UnicodeSet(UnicodeString(TRUE, gGC_ControlPattern, -1), *status);
+ fPropSets[URX_GC_L] = new UnicodeSet(UnicodeString(TRUE, gGC_LPattern, -1), *status);
+ fPropSets[URX_GC_V] = new UnicodeSet(UnicodeString(TRUE, gGC_VPattern, -1), *status);
+ fPropSets[URX_GC_T] = new UnicodeSet(UnicodeString(TRUE, gGC_TPattern, -1), *status);
+ fPropSets[URX_GC_LV] = new UnicodeSet(UnicodeString(TRUE, gGC_LVPattern, -1), *status);
+ fPropSets[URX_GC_LVT] = new UnicodeSet(UnicodeString(TRUE, gGC_LVTPattern, -1), *status);
+
+ // Check for null pointers
+ if (fPropSets[URX_ISWORD_SET] == NULL || fPropSets[URX_ISSPACE_SET] == NULL || fPropSets[URX_GC_EXTEND] == NULL ||
+ fPropSets[URX_GC_CONTROL] == NULL || fPropSets[URX_GC_L] == NULL || fPropSets[URX_GC_V] == NULL ||
+ fPropSets[URX_GC_T] == NULL || fPropSets[URX_GC_LV] == NULL || fPropSets[URX_GC_LVT] == NULL) {
+ goto ExitConstrDeleteAll;
+ }