VirtualBox

Changeset 1536 in kBuild


Ignore:
Timestamp:
Apr 20, 2008 10:46:03 PM (17 years ago)
Author:
bird
Message:

Use the value_length if possible (saves strlen). Assert its correctness instead of fallbacks.

Location:
trunk/src/kmk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/expand.c

    r1458 r1536  
    186186    return o;
    187187
     188#ifdef CONFIG_WITH_VALUE_LENGTH
     189  if (!v->recursive)
     190    {
     191      assert (v->value_length == strlen (v->value));
     192      o = variable_buffer_output (o, v->value, v->value_length);
     193    }
     194  else
     195   {
     196     value = recursively_expand (v);
     197     o = variable_buffer_output (o, value, strlen (value));
     198     free (value);
     199   }
     200#else  /* !CONFIG_WITH_VALUE_LENGTH */
    188201  value = (v->recursive ? recursively_expand (v) : v->value);
    189202
     
    192205  if (v->recursive)
    193206    free (value);
     207#endif /* !CONFIG_WITH_VALUE_LENGTH */
    194208
    195209  return o;
     
    572586  if (buf > variable_buffer)
    573587    buf = variable_buffer_output (buf, " ", 1);
     588#ifdef CONFIG_WITH_VALUE_LENGTH
     589  assert (v->value_length == strlen (v->value));
     590#endif
    574591
    575592  /* Either expand it or copy it, depending.  */
    576593  if (! v->recursive)
    577594#ifdef CONFIG_WITH_VALUE_LENGTH
    578     return variable_buffer_output (buf, v->value,
    579                                    v->value_length >= 0 ? v->value_length : strlen (v->value));
     595    return variable_buffer_output (buf, v->value, v->value_length);
    580596#else
    581597    return variable_buffer_output (buf, v->value, strlen (v->value));
     
    583599
    584600#ifdef CONFIG_WITH_VALUE_LENGTH
    585   buf = variable_expand_string (buf, v->value, v->value_length >= 0 ? v->value_length : strlen (v->value));
     601  buf = variable_expand_string (buf, v->value, v->value_length);
    586602#else
    587603  buf = variable_expand_string (buf, v->value, strlen (v->value));
  • trunk/src/kmk/variable.c

    r1503 r1536  
    131131    switch (length)
    132132    {
    133         default: 
     133        default:
    134134        case 32: //UPDATE_HASH(uvar_end[-16]);
    135         case 31: UPDATE_HASH(uvar_end[-15]); 
    136         case 30: //UPDATE_HASH(uvar_end[-14]); 
    137         case 29: UPDATE_HASH(uvar_end[-13]); 
     135        case 31: UPDATE_HASH(uvar_end[-15]);
     136        case 30: //UPDATE_HASH(uvar_end[-14]);
     137        case 29: UPDATE_HASH(uvar_end[-13]);
    138138        case 28: //UPDATE_HASH(uvar_end[-12]);
    139         case 27: UPDATE_HASH(uvar_end[-11]); 
    140         case 26: //UPDATE_HASH(uvar_end[-10]); 
    141         case 25: UPDATE_HASH(uvar_end[-9]); 
     139        case 27: UPDATE_HASH(uvar_end[-11]);
     140        case 26: //UPDATE_HASH(uvar_end[-10]);
     141        case 25: UPDATE_HASH(uvar_end[-9]);
    142142        case 24: //UPDATE_HASH(uvar[15]);
    143         case 23: UPDATE_HASH(uvar[14]); 
     143        case 23: UPDATE_HASH(uvar[14]);
    144144        case 22: //UPDATE_HASH(uvar[13]);
    145         case 21: UPDATE_HASH(uvar[12]); 
     145        case 21: UPDATE_HASH(uvar[12]);
    146146        case 20: //UPDATE_HASH(uvar[11]);
    147         case 19: UPDATE_HASH(uvar[10]); 
     147        case 19: UPDATE_HASH(uvar[10]);
    148148        case 18: //UPDATE_HASH(uvar[9]);
    149149        case 17: UPDATE_HASH(uvar[8]);
     
    164164        case 2:  //UPDATE_HASH(uvar[1]);
    165165        case 1:  UPDATE_HASH(uvar[0]);
    166         case 0: 
     166        case 0:
    167167            return hash;
    168168    }
     
    190190    switch (length)
    191191    {
    192         default: 
     192        default:
    193193#if 0 /* seems to be a waste of time. */
    194194        case 97: UPDATE_HASH(uvar_end[-77]);
     
    273273        case 21: UPDATE_HASH(uvar_end[-9]);
    274274        case 20: UPDATE_HASH(uvar[7]);
    275         case 19: UPDATE_HASH(uvar[6]); 
     275        case 19: UPDATE_HASH(uvar[6]);
    276276        case 18: UPDATE_HASH(uvar[5]);
    277277        case 17: UPDATE_HASH(uvar[4]);
     
    432432# else
    433433#define PERFILE_VARIABLE_BUCKETS        23
    434 # endif 
     434# endif
    435435#endif
    436436#ifndef SMALL_SCOPE_VARIABLE_BUCKETS
     
    439439# else
    440440#define SMALL_SCOPE_VARIABLE_BUCKETS    13
    441 # endif 
     441# endif
    442442#endif
    443443
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette