Diff for /parser3/src/classes/array.C between versions 1.16 and 1.17

version 1.16, 2024/10/02 17:58:15 version 1.17, 2024/10/04 05:12:05
Line 492  static void _sql(Request& r, MethodParam Line 492  static void _sql(Request& r, MethodParam
         const char* statement_cstr=statement_string.untaint_cstr(String::L_SQL, r.connection());          const char* statement_cstr=statement_string.untaint_cstr(String::L_SQL, r.connection());
   
         VArray& self=GET_SELF(r, VArray);          VArray& self=GET_SELF(r, VArray);
           ArrayValue& array=self.array();
   
         self.array().clear(); self.invalidate(); // just in case if called as method          array.clear(); self.invalidate(); // just in case if called as method
   
         if(sparse){          if(sparse){
                 SparseArray_sql_event_handlers handlers(distinct, self.array(), value_type);                  SparseArray_sql_event_handlers handlers(distinct, array, value_type);
                 r.connection()->query(statement_cstr, placeholders_count, placeholders, offset, limit, handlers, statement_string);                  r.connection()->query(statement_cstr, placeholders_count, placeholders, offset, limit, handlers, statement_string);
         } else {          } else {
                 Array_sql_event_handlers handlers(self.array(), value_type);                  Array_sql_event_handlers handlers(array, value_type);
                 r.connection()->query(statement_cstr, placeholders_count, placeholders, offset, limit, handlers, statement_string);                  r.connection()->query(statement_cstr, placeholders_count, placeholders, offset, limit, handlers, statement_string);
         }          }
   
           array.confirm_all_used();
   
         if(bind)          if(bind)
                 unmarshal_bind_updates(*bind, placeholders_count, placeholders);                  unmarshal_bind_updates(*bind, placeholders_count, placeholders);
 }  }
   
   
   
 static void mid(Request& r, size_t offset=0, size_t limit=ARRAY_OPTION_LIMIT_ALL) {  static void mid(Request& r, size_t offset=0, size_t limit=ARRAY_OPTION_LIMIT_ALL) {
         ArrayValue& array=GET_SELF(r, VArray).array();          ArrayValue& array=GET_SELF(r, VArray).array();
         if(limit>0){          if(limit>0){
Line 525  static void mid(Request& r, size_t offse Line 527  static void mid(Request& r, size_t offse
                                 result_array+=i.value();                                  result_array+=i.value();
                         }                          }
                 }                  }
                   result_array.confirm_all_used();
                 r.write(*result);                  r.write(*result);
         } else {          } else {
                 r.write(*new VArray);                  r.write(*new VArray);
Line 857  static void _sort(Request& r, MethodPara Line 860  static void _sort(Request& r, MethodPara
                 for(pos=0; pos<count; pos++)                  for(pos=0; pos<count; pos++)
                         array+=seq[pos].array_data;                          array+=seq[pos].array_data;
   
           self.invalidate();
         delete[] seq;          delete[] seq;
 }  }
   
Line 1017  static void _select(Request& r, MethodPa Line 1021  static void _select(Request& r, MethodPa
                 }                  }
         }          }
   
           result_array.confirm_all_used();
         r.write(*result);          r.write(*result);
 }  }
   

Removed from v.1.16  
changed lines
  Added in v.1.17


E-mail: