Ignore:
Timestamp:
Feb 4, 2007, 10:51:43 PM (19 years ago)
Author:
cinc
Message:

Changed string and path classes not to return always copies but only when necessary.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/foundation/class_c/nomstring.c

    r209 r227  
    9090{
    9191  NOMStringData* nomThis=NOMStringGetData(nomSelf);
    92   PNOMString nomRetval=(PNOMString) NOMString_new(nomSelf, NULLHANDLE);
    93   GString* gStrTmp;
    9492
    95   gStrTmp=g_string_new(_gString->str);
    96   g_string_append(gStrTmp, chrString);
    97   NOMString_assignCString(nomRetval, gStrTmp->str, NULLHANDLE);
    98   g_string_free(gStrTmp, TRUE);
     93  g_string_append(_gString, chrString);
    9994
    100   return nomRetval;
     95  return nomSelf;
    10196}
    10297
     
    10499                                                         CORBA_Environment *ev)
    105100{
    106   /*  NOMStringData* nomThis=NOMStringGetData(nomSelf); */
    107 
    108101  return NOMString_appendCString(nomSelf, NOMString_queryCString(nomString, NULLHANDLE), NULLHANDLE);
    109102}
     
    112105                                                          CORBA_Environment *ev)
    113106{
    114 /* NOMStringData* nomThis=NOMStringGetData(nomSelf); */
    115 
    116107  return NOMString_prependCString(nomSelf, NOMString_queryCString(nomString, NULLHANDLE), NULLHANDLE);
    117108}
     
    120111{
    121112  NOMStringData* nomThis=NOMStringGetData(nomSelf);
    122   PNOMString nomRetval=(PNOMString)NOMString_new(nomSelf, NULLHANDLE);
    123   GString* gStrTmp;
     113  g_string_prepend(_gString, chrString);
    124114
    125   gStrTmp=g_string_new(_gString->str);
    126   g_string_prepend(gStrTmp, chrString);
    127   NOMString_assignCString(nomRetval, gStrTmp->str, NULLHANDLE);
    128   g_string_free(gStrTmp, TRUE);
    129 
    130   return nomRetval;
     115  return nomSelf;
    131116}
    132117
     
    142127{
    143128  NOMStringData* nomThis=NOMStringGetData(nomSelf);
    144   PNOMString nomRetval=(PNOMString)NOMString_new(nomSelf, NULLHANDLE);
    145   GString* gStrTmp;
    146129
    147   gStrTmp=g_string_new(_gString->str);
    148   g_string_truncate(gStrTmp, ulNewLen);
    149   NOMString_assignCString(nomRetval, gStrTmp->str, NULLHANDLE);
    150   g_string_free(gStrTmp, TRUE);
     130  g_string_truncate(_gString, ulNewLen);
    151131
    152   return nomRetval;
     132  return nomSelf;
    153133}
    154134
Note: See TracChangeset for help on using the changeset viewer.