X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fnasal%2Fmisc.c;h=8640aea09769c2b90bc5c17f796cb8d7a7a5058f;hb=dd1ea541ecc4403bcea2ca8c60c03971d1f4338f;hp=85a9f126440462915e16a60bcf3d1fa7238ddc24;hpb=de6003367d006218782d64b5c0da4d8c8ea8ede0;p=simgear.git diff --git a/simgear/nasal/misc.c b/simgear/nasal/misc.c index 85a9f126..8640aea0 100644 --- a/simgear/nasal/misc.c +++ b/simgear/nasal/misc.c @@ -77,8 +77,9 @@ naRef naNew(struct Context* c, int type) naRef naNewString(struct Context* c) { naRef s = naNew(c, T_STR); - PTR(s).str->len = 0; - PTR(s).str->data = 0; + PTR(s).str->emblen = 0; + PTR(s).str->data.ref.len = 0; + PTR(s).str->data.ref.ptr = 0; PTR(s).str->hashcode = 0; return s; } @@ -177,12 +178,13 @@ int naEqual(naRef a, naRef b) int naStrEqual(naRef a, naRef b) { int i; - if(!(IS_STR(a) && IS_STR(b))) + char *ap, *bp; + if(!IS_STR(a) || !IS_STR(b) || naStr_len(a) != naStr_len(b)) return 0; - if(PTR(a).str->len != PTR(b).str->len) - return 0; - for(i=0; ilen; i++) - if(PTR(a).str->data[i] != PTR(b).str->data[i]) + ap = naStr_data(a); + bp = naStr_data(b); + for(i=0; i