RAPL

Diff
Login

Diff

Differences From Artifact [e9f0075057]:

To Artifact [2f06c8eb69]:


92
93
94
95
96
97
98





99
100
101
102
103
104
105
    case stmt.TOKEN_BRACE:
      if (!stmt.in_quotes) {
        obj_ptr = token.obj_ptr;
      } else {
        switch (stmt.interp.script_obj_type.substObj(token.obj_ptr, result_ptr, stmt.FUNCTION_FLAGS_LEAVE_ERR_MSG)) {
        case stmt.OK:
	  obj_ptr = result_ptr[0];





          break;
        default:
          return stmt.ERROR;
        }
      }
      break;
    case stmt.TOKEN_CMD:







>
>
>
>
>







92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
    case stmt.TOKEN_BRACE:
      if (!stmt.in_quotes) {
        obj_ptr = token.obj_ptr;
      } else {
        switch (stmt.interp.script_obj_type.substObj(token.obj_ptr, result_ptr, stmt.FUNCTION_FLAGS_LEAVE_ERR_MSG)) {
        case stmt.OK:
	  obj_ptr = result_ptr[0];
	  /* special handling for expand in quotes !! */
	  if (obj_ptr.len == 1 && obj_ptr.bytes.substring(0,1) == "*") {
            obj_ptr.len = 3;
	    obj_ptr.bytes = "{*}"+"\0";
	  }
          break;
        default:
          return stmt.ERROR;
        }
      }
      break;
    case stmt.TOKEN_CMD:
154
155
156
157
158
159
160
161

162
163
164
165
166
167
168
    var result_ptr;
    var retcode;
    var my_in_quotes = stmt.in_quotes;

    stmt.in_quotes = false;
    intv = new Array();
    /* Compute every token forming the argument
     * in the intv objects vector. */

    j = 0;
    for (i = 0; i < word_tokens; i++) {
//print("IPOL!"+i+"!"+idx+"!");
//script.dumpToken(i+idx);
      if (script.script_object.tokens[i + idx].token == stmt.TOKEN_COMMENT) {
        continue;
      }







|
>







159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
    var result_ptr;
    var retcode;
    var my_in_quotes = stmt.in_quotes;

    stmt.in_quotes = false;
    intv = new Array();
    /* Compute every token forming the argument
     * in the intv objects vector. 
     */
    j = 0;
    for (i = 0; i < word_tokens; i++) {
//print("IPOL!"+i+"!"+idx+"!");
//script.dumpToken(i+idx);
      if (script.script_object.tokens[i + idx].token == stmt.TOKEN_COMMENT) {
        continue;
      }
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
          /* For interpolation we call a helper
           * function to do the work for us. 
           */
//print("interpolate!");
//script.dumpToken(i);
          word_obj_ptr = stmt.interpolateTokens(script, i, word_tokens, stmt.TOKEN_NONE);
//print("interpolate!"+word_obj_ptr.toDebugString()+"!");
          if (word_obj_ptr.len == 0) {
            /* we had only comment tokens, nothing to do */
            had_comment = true;
          }
        }
        i += word_tokens;
	if (!had_comment) {
          if (!word_obj_ptr) {







|







403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
          /* For interpolation we call a helper
           * function to do the work for us. 
           */
//print("interpolate!");
//script.dumpToken(i);
          word_obj_ptr = stmt.interpolateTokens(script, i, word_tokens, stmt.TOKEN_NONE);
//print("interpolate!"+word_obj_ptr.toDebugString()+"!");
          if (word_obj_ptr != null && word_obj_ptr.len == 0) {
            /* we had only comment tokens, nothing to do */
            had_comment = true;
          }
        }
        i += word_tokens;
	if (!had_comment) {
          if (!word_obj_ptr) {