Diff for /parser3/src/classes/hash.C between versions 1.97 and 1.101

version 1.97, 2009/07/06 08:49:49 version 1.101, 2009/07/08 00:30:58
Line 232  static void _sub(Request& r, MethodParam Line 232  static void _sub(Request& r, MethodParam
 }  }
   
 static void copy_all_dontoverwrite_to(  static void copy_all_dontoverwrite_to(
                                                                   HashStringValue::key_type key,                                           HashStringValue::key_type key, 
                                                                   HashStringValue::value_type value,                                           HashStringValue::value_type value, 
                                                                   HashStringValue* dest) {                                          HashStringValue* dest) {
         dest->put_dont_replace(key, value);          dest->put_dont_replace(key, value);
 }  }
 static void _union(Request& r, MethodParams& params) {  static void _union(Request& r, MethodParams& params) {
Line 256  struct Copy_intersection_to_info { Line 256  struct Copy_intersection_to_info {
 };  };
 #endif  #endif
 static void copy_intersection_to(  static void copy_intersection_to(
                                                                  HashStringValue::key_type key,                                           HashStringValue::key_type key, 
                                                                  HashStringValue::value_type value,                                           HashStringValue::value_type value, 
                                                                  Copy_intersection_to_info *info) {                                          Copy_intersection_to_info *info) {
         if(info->b->get(key))          if(info->b->get(key))
                 info->dest->put_dont_replace(key, value);                  info->dest->put_dont_replace(key, value);
 }  }
Line 276  static void _intersection(Request& r, Me Line 276  static void _intersection(Request& r, Me
 }  }
   
 static bool intersects(  static bool intersects(
                                            HashStringValue::key_type key,                                           HashStringValue::key_type key, 
                                            HashStringValue::value_type /*value*/,                                           HashStringValue::value_type /*value*/, 
                                            HashStringValue* b) {                                          HashStringValue* b) {
         return b->get(key)!=0;          return b->get(key)!=0;
 }  }
   
Line 354  static void _sql(Request& r, MethodParam Line 354  static void _sql(Request& r, MethodParam
   
         Temp_lang temp_lang(r, String::L_SQL);          Temp_lang temp_lang(r, String::L_SQL);
         const String& statement_string=r.process_to_string(statement);          const String& statement_string=r.process_to_string(statement);
         const char* statement_cstr=statement_string.cstr(String::L_UNSPECIFIED, r.connection());          const char* statement_cstr=statement_string.untaint_cstr(r.flang, r.connection());
   
         HashStringValue& hash=GET_SELF(r, VHash).hash();          HashStringValue& hash=GET_SELF(r, VHash).hash();
         hash.clear();             hash.clear();   
Line 376  static void _sql(Request& r, MethodParam Line 376  static void _sql(Request& r, MethodParam
 }  }
   
 static void keys_collector(  static void keys_collector(
                            HashStringValue::key_type key,                           HashStringValue::key_type key, 
                            HashStringValue::value_type,                           HashStringValue::value_type, 
                            Table *table) {                          Table *table) {
         Table::element_type row(new ArrayString);          Table::element_type row(new ArrayString(1));
         *row+=new String(key, String::L_TAINTED);          *row+=new String(key, String::L_TAINTED);
         *table+=row;          *table+=row;
 }  }
Line 390  static void _keys(Request& r, MethodPara Line 390  static void _keys(Request& r, MethodPara
         else           else 
                 keys_column_name=new String("key");                  keys_column_name=new String("key");
   
         Table::columns_type columns(new ArrayString);          Table::columns_type columns(new ArrayString(1));
         *columns+=keys_column_name;          *columns+=keys_column_name;
         Table* table=new Table(columns);          Table* table=new Table(columns);
   

Removed from v.1.97  
changed lines
  Added in v.1.101


E-mail: