diff options
author | Georgi Kodinov <joro@sun.com> | 2010-02-11 19:41:53 +0200 |
---|---|---|
committer | Georgi Kodinov <joro@sun.com> | 2010-02-11 19:41:53 +0200 |
commit | 5107f6b9b47e41c03d2c75f9d4d70b25dc0aab08 (patch) | |
tree | 0ecde18d6ef311d09aac32edb48e35ecd8c8a815 /sql/sql_select.h | |
parent | 0ee625fa1f2cbd9d26aa5945446102f7dd9ec7f3 (diff) | |
download | mariadb-git-5107f6b9b47e41c03d2c75f9d4d70b25dc0aab08.tar.gz |
Addendum to bug #46175 : use and check for the correct error values
when converting to a enumerated type.
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r-- | sql/sql_select.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h index ef43f9b049c..8d3520bf9c8 100644 --- a/sql/sql_select.h +++ b/sql/sql_select.h @@ -736,10 +736,11 @@ public: we need to check for errors executing it and react accordingly */ if (!res && table->in_use->is_error()) - res= 2; + res= 1; /* STORE_KEY_FATAL */ dbug_tmp_restore_column_map(table->write_set, old_map); null_key= to_field->is_null() || item->null_value; - return (err != 0 || res > 2 ? STORE_KEY_FATAL : (store_key_result) res); + return ((err != 0 || res < 0 || res > 2) ? STORE_KEY_FATAL : + (store_key_result) res); } }; @@ -775,10 +776,10 @@ protected: we need to check for errors executing it and react accordingly */ if (!err && to_field->table->in_use->is_error()) - err= 2; + err= 1; /* STORE_KEY_FATAL */ } null_key= to_field->is_null() || item->null_value; - return (err > 2 ? STORE_KEY_FATAL : (store_key_result) err); + return ((err < 0 || err > 2) ? STORE_KEY_FATAL : (store_key_result) err); } }; |