Commit graph

386 commits

Author SHA1 Message Date
jimw@mysql.com
77fbc72f47 Handle errors returned by system crypt() in ENCRYPT(). (Bug #13619) 2005-10-06 16:15:53 -07:00
jimw@mysql.com
663d0bbdfb Fix crash in DES_DECRYPT(NULL). (Bug #12757) 2005-08-25 12:34:42 -07:00
bar@mysql.com
fd7ad7f16f Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/usr/home/bar/mysql-4.1.b12351
2005-08-12 15:44:03 +05:00
bell@51.0.168.192.in-addr.arpa
4f26fa5184 merge 2005-08-11 10:20:06 +03:00
patg@krsna.patg.net
6128521b5b item_strfunc.cc:
BUG #11104 
      Took out the offset-=delimiter_length-1 out of the for loop. It was causing
      basically this: 
      select substring_index('the king of the the hill', 'the', -2) to not work.
      The first iteration, offset would be initialised to 24, then strstr would 
      point at 'the king of the the* hill' ('*'means right before the 
      character following), returning a offset of 16. The for loop would then 
      decrement offset by two (3 - 1), to 14, now pointing at 
      "the king of th*e the hill", _skipping_ past the 'e' in the second to last
      'the', and therefore strstr would never have a chance of matching the 
      second to last 'the', then moving on to the 'the' at the begginning of the 
      string!
      In a nutshell, offset was being decremented by too great a value, preventing
      the second to last 'the' from being ever found, hence the result of 
      'king of the the hill' from the query that is reported in the bug report
func_str.test:
  BUG #11104
  Added tests to make sure fix addresses issues in original bug report
func_str.result:
  BUG #11104 
  New results for new tests
2005-08-08 13:46:13 -07:00
bar@mysql.com
e6f96b4939 func_system.result, func_system.test:
adding test case
item_strfunc.cc:
  Bug#12351
  CONCAT with USER()/DATEBASE() and
  a column gets strange results.
  Mark created Item_str as constant, so CONCAT
  cannot reuse it for optimization purposes.
2005-08-08 19:09:54 +05:00
patg@krsna.patg.net
8109934e1d BUG 11104 (same as changeset 1.1891 on the 5.0 tree, but realised this
needed to be fixed in earlier versions)
Fixed the iteration of how substrings are handled with negative indexes in 
SUBSTRING_INDEX
2005-07-31 21:28:52 -07:00
jimw@mysql.com
e26a344d19 Fix calculation for length of LPAD() and RPAD() reported to
client via mysql_fetch_fields(). (Bug #11311)
2005-07-22 11:46:29 -07:00
monty@mishka.local
7e83d09ce7 Simple fixes during review of new code 2005-07-19 19:25:05 +03:00
gluh@eagle.intranet.mysql.r18.ru
672e1f20cb Bug #9854 hex() and out of range handling
added out of range handling
2005-07-13 14:23:09 +05:00
jimw@mysql.com
60368919f9 Merge mysql.com:/home/jimw/my/mysql-4.1-11643
into  mysql.com:/home/jimw/my/mysql-4.1-clean
2005-07-12 09:31:07 -07:00
jimw@mysql.com
de9909faec Fix crash caused by calling DES_ENCRYPT() without the --des-key-file
option having been passed to the server. (Bug #11643)
2005-07-07 11:49:44 -07:00
bell@sanja.is.com.ua
0e30eea141 fixed substring() length calculation in case of constant negative argument (BUG#10269) 2005-06-28 21:45:11 +03:00
monty@mishka.local
7398252d02 Portability fixes
Fixes while reviewing new pushed code
NULL as argument to encrypt/decrypt should return NULL without a warning
2005-06-27 20:31:00 +03:00
msvensson@neptunus.(none)
daba295db0 BUG#10589: des_encrypt functionality always return NULL
- Push warnings if des_encrypt or des_descrypt function fails because of out of resources or wrong params.
 - Push warning if des_encrypt or des_decrypt function is used when server is missing support for openssl.
 - Add test func_encrypt_nossl that is tun when the server is missing support for openssl.
2005-06-17 18:07:46 +02:00
serg@serg.mylan
6a5349028c a compiler must see '#pragma implementation' *before*
'#pragma interface' (that comes with the #include'd header file)
2005-06-05 19:38:52 +02:00
monty@mysql.com
29fd1f2fd9 Move USE_PRAGMA_IMPLEMENTATION to proper place
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions
Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys
Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable
2005-06-03 23:46:03 +03:00
kent@mysql.com
bd48eed988 tztime.cc:
Set #pragma implementation" earlier
Many files:
  Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
2005-06-02 02:43:32 +02:00
msvensson@neptunus.(none)
83d430353e Add ifdefs to control when "#pragma implementation" should be used
Added some more ifdefs for "#pragma interface"
2005-05-26 12:09:14 +02:00
bar@noter.(none)
c783cb3d7e SUBSTR with negative argument didn't work
with multi-byte strings, length() instead
of numchars() where used in a mistake.
2005-05-09 20:55:06 +05:00
bar@mysql.com
a7b877df78 Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
not always correct for NULL values.
Now they always result a non NULL value even
the argument is NULL. It is more usefull for 
debugging purposes.
2005-03-16 17:44:29 +04:00
bar@mysql.com
c6c887b990 # Bug#8785 Problem with nested concats and
character set conversion of a string constant.
2005-03-15 17:15:47 +04:00
igor@rurik.mysql.com
af5d21357e Manual merge 2005-03-09 10:58:52 -08:00
igor@rurik.mysql.com
4559fb998b func_str.result, func_str.test:
Added a test case for bug #8669.
item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.
2005-03-09 00:15:51 -08:00
joerg@mysql.com
28b65497da Manual merge, no effect on 4.1. 2005-03-08 14:17:57 +01:00
gluh@gluh.mysql.r18.ru
00449b8f9c Fix for bug#8978 : Crash on 'select format ...' 2005-03-07 18:56:18 +03:00
bar@mysql.com
7e8e033290 type_blob.result, func_system.result, func_str.result, ctype_collate.result:
fixing test results accordingly.
func_system.test:
  New test that illegal mix of collations does not happen anymore.
item_strfunc.h:
    safe_charset_converter() was added for system constants.
item_strfunc.cc:
  safe_charset_converter() was added for system constants.
item_func.cc, item.h, item.cc:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
item_create.cc:
  Version is a system constant too.
2005-03-04 14:20:49 +04:00
gluh@gluh.mysql.r18.ru
2b5ee94a33 Fix for bug#6317: string function CHAR, parameter is NULL, wrong result 2005-02-23 18:15:45 +03:00
monty@mysql.com
e2dc9b4099 Backport my_strntod() from 5.0
Change string->float conversion to delay division as long as possible.
This gives us more exact integer->float conversion for numbers of type '123.45E+02' (Bug #7740)
2005-02-22 12:51:23 +02:00
ramil@mysql.com
9a042c81e7 A fix. "(int) var" type cast doesn't work correctly for uint32 var
on some 64-bit platforms (e.g. IRIX, non-debug build).
2005-02-15 15:01:20 +04:00
monty@mysql.com
79ec81071a Better bugfix for "HAVING when refering to RAND()" (Bug #8216)
Ensure that references in HAVING, ORDER BY or GROUP BY are calculated after fields in SELECT.
This will ensure that any reference to these has a valid value.
Generalized the code for split_sum_func()
2005-02-08 14:41:09 +02:00
monty@mysql.com
32f91f48e8 Fixed bug in HAVING when refering to RAND() through alias
(BUG 8216)
2005-02-07 18:13:57 +02:00
jimw@mysql.com
5f0c4ff140 Merge fixes for #8248, #5569. 2005-02-02 08:21:11 -08:00
igor@rurik.mysql.com
0fb0dab4ca func_str.result, func_str.test:
Added a test case for bug #7751.
item_strfunc.cc:
  Fixed bug #7751.
  The function Item_func_conv::val_str did not update
  the unsigned_flag value.
2005-02-01 23:34:31 -08:00
jimw@mysql.com
e86457cef0 Fix QUOTE() to not reuse the input field for output, which resulted in
incorrect results when the input was a constant across a multi-row SELECT
statement. (Bug #8248)
2005-02-01 18:29:10 -08:00
serg@serg.mylan
67ba2e367a fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
bar@mysql.com
8f23e90232 #7874: CONCAT() gives wrong results mixing latin1 field and utf8 string literals
We should not overwrite res if it is returned from a const item.
2005-01-18 10:42:29 +04:00
bar@mysql.com
e7e5e8b1e7 user_var.result, func_str.result, item_strfunc.cc:
bug#7839 ncorrect collation for char(ascii('a'))
2005-01-17 10:38:35 +04:00
bar@mysql.com
2bd854c859 Bug #7730 Server crash using soundex on an utf8 table
Don't use my_tolower: it works only for 8bit charsets.
2005-01-11 19:58:53 +04:00
timour@mysql.com
064c73490b Fix for BUG#7455.
The fix checks if the trim string argument is NULL. If so, the standard
mandates that the function result must be also NULL.
2004-12-28 11:57:56 +02:00
Sinisa@sinisa.nasamreza.org
f385e79ad4 4.0 -> 4.1 merge 2004-12-24 23:07:10 +02:00
Sinisa@sinisa.nasamreza.org
3c5a325897 Fix for a bug #7495 2004-12-23 21:08:54 +02:00
Sinisa@sinisa.nasamreza.org
e409ebf143 A fix for the bug #7495 2004-12-22 21:31:17 +02:00
sergefp@mysql.com
3ceb04a5d8 Merge of fix for BUG#6976 continued: pulling in some Item_ref changes from 5.0
* Added Item_ref::set_properties 
 * Item_ref::Item_ref now expects to get in *item either
     NULL - then fix_fields() will be called later  or 
     ptr to Item it will refer to - then an equivalent of fix_fields() call is performed
2004-12-14 01:07:06 +03:00
sergefp@mysql.com
9ed8cd701b Merging fix for BUG#6976 from 4.0 to 4.1
The problem in 4.1 was the same as in 4.0 - fix_fields() not called for created Item_ref. 
The fix is similar too - initialize Item_refs in ctor (but don't interfere with cases when 
Item_ref is used by subselects).
2004-12-13 20:06:06 +03:00
Sinisa@sinisa.nasamreza.org
d7734fd8ac Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1
2004-12-10 00:19:52 +02:00
Sinisa@sinisa.nasamreza.org
6772f0a721 A fix for a crashing bug #7101, which occures when the
expression involving LEFT() function is used in GROUP BY
field.
2004-12-10 00:17:43 +02:00
dlenev@mysql.com
62a6d9749b Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6765
2004-12-09 13:33:12 +03:00
dlenev@brandersnatch.localdomain
4b0882e0a6 Fix for bug #6765 "Implicit access to time zone description
tables requires privileges for them if some table or column level grants
present" (with after-review fixes).

We should set SELECT_ACL for implicitly opened tables in 
my_tz_check_n_skip_implicit_tables() to be able to bypass privilege
checking in check_grant(). Also we should exclude those tables from
privilege checking in multi-update.
2004-12-09 13:31:46 +03:00
bar@mysql.com
248a968581 UCS2 support in ENUM and SET, which also fixes:
Bug #5174 SHOW CREATE TABLE hangs up if the table contains half-with katakana enum values
UCS2 values are stored in HEX encoding in FRM file
2004-12-06 20:45:32 +04:00