diff options
author | unknown <serg@serg.mylan> | 2003-12-09 20:50:11 +0100 |
---|---|---|
committer | unknown <serg@serg.mylan> | 2003-12-09 20:50:11 +0100 |
commit | 6f1d63bfe0f7166709061c6f6ad07d00164ce6d8 (patch) | |
tree | b8ee45262e3da0469b0169121bfbcb03b67c6557 | |
parent | 4e85bf326e8051533bb680d1a612813705dc789d (diff) | |
parent | 7cfbf9e8f681eac207f8b37d12780f73ffa5dd70 (diff) | |
download | mariadb-git-6f1d63bfe0f7166709061c6f6ad07d00164ce6d8.tar.gz |
Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
sql/mysqld.cc:
Auto merged
-rw-r--r-- | libmysql/libmysql.c | 3 | ||||
-rw-r--r-- | myisam/ft_boolean_search.c | 11 | ||||
-rw-r--r-- | sql/mysqld.cc | 4 | ||||
-rw-r--r-- | sql/opt_range.cc | 2 | ||||
-rw-r--r-- | sql/repl_failsafe.cc | 1 | ||||
-rw-r--r-- | sql/table.cc | 5 |
6 files changed, 16 insertions, 10 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index 6abc29d29f4..5fcc3ba5ee0 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -941,7 +941,8 @@ static void mysql_read_default_options(struct st_mysql_options *options, options->rpl_parse= 1; break; case 27: - options->max_allowed_packet= atoi(opt_arg); + if (opt_arg) + options->max_allowed_packet= atoi(opt_arg); break; default: DBUG_PRINT("warning",("unknown option: %s",option[0])); diff --git a/myisam/ft_boolean_search.c b/myisam/ft_boolean_search.c index 30b52a20060..c7128464228 100644 --- a/myisam/ft_boolean_search.c +++ b/myisam/ft_boolean_search.c @@ -322,10 +322,13 @@ FT_INFO * ft_init_boolean_search(MI_INFO *info, uint keynr, byte *query, to alloc queue with alloc_root() */ res=ftb->queue.max_elements=1+query_len/(min(ft_min_word_len,2)+1); - ftb->queue.root=(byte **)alloc_root(&ftb->mem_root, (res+1)*sizeof(void*)); + if (!(ftb->queue.root= + (byte **)alloc_root(&ftb->mem_root, (res+1)*sizeof(void*)))) + goto err; reinit_queue(& ftb->queue, res, 0, 0, (int (*)(void*,byte*,byte*))FTB_WORD_cmp, 0); - ftbe=(FTB_EXPR *)alloc_root(&ftb->mem_root, sizeof(FTB_EXPR)); + if (!(ftbe=(FTB_EXPR *)alloc_root(&ftb->mem_root, sizeof(FTB_EXPR)))) + goto err; ftbe->weight=1; ftbe->flags=FTB_FLAG_YES; ftbe->nos=1; @@ -343,6 +346,10 @@ FT_INFO * ft_init_boolean_search(MI_INFO *info, uint keynr, byte *query, if (ftb->queue.elements<2) ftb->with_scan &= ~FTB_FLAG_TRUNC; ftb->state=READY; return ftb; +err: + free_root(& ftb->mem_root, MYF(0)); + my_free((gptr)ftb,MYF(0)); + return 0; } diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 70ee2f632ca..410a1644eec 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -4634,14 +4634,14 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)), my_use_symdir=0; break; case (int) OPT_BIND_ADDRESS: - if (argument && isdigit(argument[0])) + if (isdigit(argument[0])) { my_bind_addr = (ulong) inet_addr(argument); } else { struct hostent *ent; - if (argument || argument[0]) + if (argument[0]) ent=gethostbyname(argument); else { diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 63850709285..07f2f1eaf67 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -2454,7 +2454,7 @@ QUICK_SELECT *get_quick_select_for_ref(THD *thd, TABLE *table, TABLE_REF *ref) if (cp_buffer_from_ref(ref)) { if (thd->fatal_error) - return 0; // out of memory + goto err; // out of memory return quick; // empty range } diff --git a/sql/repl_failsafe.cc b/sql/repl_failsafe.cc index 6b91d81b487..6599516044a 100644 --- a/sql/repl_failsafe.cc +++ b/sql/repl_failsafe.cc @@ -426,7 +426,6 @@ static Slave_log_event* find_slave_event(IO_CACHE* log, my_snprintf(errmsg, SLAVE_ERRMSG_SIZE, "Could not find slave event in log '%s'", (char*)log_file_name); - delete ev; return 0; } diff --git a/sql/table.cc b/sql/table.cc index 422202301f1..0789f7469e7 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -1100,13 +1100,12 @@ rename_file_ext(const char * from,const char * to,const char * ext) char *get_field(MEM_ROOT *mem, TABLE *table, uint fieldnr) { Field *field=table->field[fieldnr]; - char buff[MAX_FIELD_WIDTH]; + char buff[MAX_FIELD_WIDTH], *to; String str(buff,sizeof(buff)); field->val_str(&str,&str); uint length=str.length(); - if (!length) + if (!length || !(to= (char*) alloc_root(mem,length+1))) return NullS; - char *to= (char*) alloc_root(mem,length+1); memcpy(to,str.ptr(),(uint) length); to[length]=0; return to; |