1. 04 Jan, 2013 1 commit
    • Nirbhay Choubey's avatar
      Bug#16066243 PB2 FAILURES I_MAIN.BUG15912213 AND · 138217a2
      Nirbhay Choubey authored
          I_MAIN.CTYPE_UTF8 FOR MACOSX10.6 FOR 5.1
      
      While converting directory name to filename, a
      file separator (FN_LIBCHAR) might get appended
      to the resulting file name. This can result in
      off-by-one error when length of the input string
      is equal to FN_REFLEN. In this case, the terminating
      '\0' gets written beyond the buffer allocated to store
      the result.
      
      Fixed by incrementing the dst buffer size by 1. As
      extra safety, switched to strnmov() and added a debug
      assert to check the length of the input file name.
      
      No test case added as the scenario is already
      covered by the test cases added for bugs in
      the description.
      138217a2
  2. 28 Dec, 2010 1 commit
    • Kent Boortz's avatar
      - Added/updated copyright headers · fddb1f1b
      Kent Boortz authored
      - Removed files specific to compiling on OS/2
      - Removed files specific to SCO Unix packaging
      - Removed "libmysqld/copyright", text is included in documentation
      - Removed LaTeX headers for NDB Doxygen documentation
      - Removed obsolete NDB files
      - Removed "mkisofs" binaries
      - Removed the "cvs2cl.pl" script
      - Changed a few GPL texts to use "program" instead of "library"
      fddb1f1b
  3. 17 Oct, 2007 1 commit
    • kaa@polly.(none)'s avatar
      Fix for bug #31207: Test "join_nested" shows different strategy on IA64 · 6d1f3e8d
      kaa@polly.(none) authored
      CPUs / Intel's ICC compile
      
      The bug is a combination of two problems:
      
      1. IA64/ICC MySQL binaries use glibc's qsort(), not the one in mysys.
      
      2. The order relation implemented by join_tab_cmp() is not transitive,
      i.e. it is possible to choose such a, b and c that (a < b) && (b < c)
      but (c < a). This implies that result of a sort using the relation
      implemented by join_tab_cmp() depends on the order in which
      elements are compared, i.e. the result is implementation-specific. Since
      choose_plan() uses qsort() to pre-sort the
      join tables using join_tab_cmp() as a compare function, the results of
      the sorting may vary depending on qsort() implementation.
      
      It is neither possible nor important to implement a better ordering
      algorithm in join_tab_cmp(). Therefore the only way to fix it is to
      force our own qsort() to be used by renaming it to my_qsort(), so we don't depend
      on linker to decide that.
      
      This patch also "fixes" bug #20530: qsort redefinition violates the
      standard.
      6d1f3e8d
  4. 10 May, 2007 1 commit
    • monty@mysql.com/narttu.mysql.fi's avatar
      WL#3817: Simplify string / memory area types and make things more consistent (first part) · 088e2395
      monty@mysql.com/narttu.mysql.fi authored
      The following type conversions was done:
      
      - Changed byte to uchar
      - Changed gptr to uchar*
      - Change my_string to char *
      - Change my_size_t to size_t
      - Change size_s to size_t
      
      Removed declaration of byte, gptr, my_string, my_size_t and size_s. 
      
      Following function parameter changes was done:
      - All string functions in mysys/strings was changed to use size_t
        instead of uint for string lengths.
      - All read()/write() functions changed to use size_t (including vio).
      - All protocoll functions changed to use size_t instead of uint
      - Functions that used a pointer to a string length was changed to use size_t*
      - Changed malloc(), free() and related functions from using gptr to use void *
        as this requires fewer casts in the code and is more in line with how the
        standard functions work.
      - Added extra length argument to dirname_part() to return the length of the
        created string.
      - Changed (at least) following functions to take uchar* as argument:
        - db_dump()
        - my_net_write()
        - net_write_command()
        - net_store_data()
        - DBUG_DUMP()
        - decimal2bin() & bin2decimal()
      - Changed my_compress() and my_uncompress() to use size_t. Changed one
        argument to my_uncompress() from a pointer to a value as we only return
        one value (makes function easier to use).
      - Changed type of 'pack_data' argument to packfrm() to avoid casts.
      - Changed in readfrm() and writefrom(), ha_discover and handler::discover()
        the type for argument 'frmdata' to uchar** to avoid casts.
      - Changed most Field functions to use uchar* instead of char* (reduced a lot of
        casts).
      - Changed field->val_xxx(xxx, new_ptr) to take const pointers.
      
      Other changes:
      - Removed a lot of not needed casts
      - Added a few new cast required by other changes
      - Added some cast to my_multi_malloc() arguments for safety (as string lengths
        needs to be uint, not size_t).
      - Fixed all calls to hash-get-key functions to use size_t*. (Needed to be done
        explicitely as this conflict was often hided by casting the function to
        hash_get_key).
      - Changed some buffers to memory regions to uchar* to avoid casts.
      - Changed some string lengths from uint to size_t.
      - Changed field->ptr to be uchar* instead of char*. This allowed us to
        get rid of a lot of casts.
      - Some changes from true -> TRUE, false -> FALSE, unsigned char -> uchar
      - Include zlib.h in some files as we needed declaration of crc32()
      - Changed MY_FILE_ERROR to be (size_t) -1.
      - Changed many variables to hold the result of my_read() / my_write() to be
        size_t. This was needed to properly detect errors (which are
        returned as (size_t) -1).
      - Removed some very old VMS code
      - Changed packfrm()/unpackfrm() to not be depending on uint size
        (portability fix)
      - Removed windows specific code to restore cursor position as this
        causes slowdown on windows and we should not mix read() and pread()
        calls anyway as this is not thread safe. Updated function comment to
        reflect this. Changed function that depended on original behavior of
        my_pwrite() to itself restore the cursor position (one such case).
      - Added some missing checking of return value of malloc().
      - Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid 'long' overflow.
      - Changed type of table_def::m_size from my_size_t to ulong to reflect that
        m_size is the number of elements in the array, not a string/memory
        length.
      - Moved THD::max_row_length() to table.cc (as it's not depending on THD).
        Inlined max_row_length_blob() into this function.
      - More function comments
      - Fixed some compiler warnings when compiled without partitions.
      - Removed setting of LEX_STRING() arguments in declaration (portability fix).
      - Some trivial indentation/variable name changes.
      - Some trivial code simplifications:
        - Replaced some calls to alloc_root + memcpy to use
          strmake_root()/strdup_root().
        - Changed some calls from memdup() to strmake() (Safety fix)
        - Simpler loops in client-simple.c
      088e2395
  5. 22 Mar, 2007 1 commit
  6. 23 Dec, 2006 1 commit
  7. 20 Nov, 2006 1 commit
    • monty@mysql.com/nosik.monty.fi's avatar
      Remove compiler warnings · e8258798
      monty@mysql.com/nosik.monty.fi authored
      (Mostly in DBUG_PRINT() and unused arguments)
      Fixed bug in query cache when used with traceing (--with-debug)
      Fixed memory leak in mysqldump
      Removed warnings from mysqltest scripts (replaced -- with #)
      e8258798
  8. 23 Jun, 2006 1 commit
  9. 08 May, 2006 1 commit
  10. 15 Apr, 2006 1 commit
  11. 11 Apr, 2006 2 commits
  12. 23 Mar, 2006 1 commit
  13. 24 Jan, 2006 1 commit
  14. 19 Oct, 2005 1 commit
    • aivanov@mysql.com's avatar
      Fix for BUG#4375: Windows specific directories are copied · e203a42d
      aivanov@mysql.com authored
       during replication.
       Modified my_dir(). Now this function skips hidden and system
       files which sometimes are created by Windows.
       NOTE. The fix is similar to the previuos one (05 July 2004)
       except for correct setting of the 'attrib' variable value
       (within the previous fix this variable was left uninitialized
       when my_dir() was called with My_flags & MY_WANT_STAT == 0).
      e203a42d
  15. 24 Aug, 2004 1 commit
  16. 23 Aug, 2004 1 commit
  17. 29 Jul, 2004 1 commit
  18. 05 Jul, 2004 2 commits
    • guilhem@mysql.com's avatar
      my_lib.c: · 2d5fbe0a
      guilhem@mysql.com authored
        more accurate comment
      2d5fbe0a
    • guilhem@mysql.com's avatar
      Windows-specific: · 912eb811
      guilhem@mysql.com authored
      Fix for BUG#4375 "Windows specific directories are copied during
      replication": in the Windows version of my_dir(), do not show hidden
      or system files which Windows sometimes creates in the root directory
      of drive (like RECYCLER and SYSTEM VOLUME INFORMATION directories) (so
      this problem showed up only when the datadir was the root dir of a
      drive).
      This will make SHOW DATABASES display better, and will do no harm to
      MySQL. For example, DROP DATABASE will not miss some files, as MySQL
      creates no hidden or system files.
      912eb811
  19. 12 Dec, 2003 1 commit
    • dlenev@mysql.com's avatar
      Fix for Bug #1952 · d7ebfbab
      dlenev@mysql.com authored
      "SHOW TABLE STATUS very slow w/large number of tables"
      Replaced old algorithm which were used in my_dir() and stored
      all information about directory entries in one chunk of memory
      with new one which stores file names and MY_STAT structures in
      separate memroot, so now we don't need to copy this data during
      reallocation of dir_entry array.
      d7ebfbab
  20. 11 Dec, 2003 1 commit
    • monty@mysql.com's avatar
      Fixed a possible memory leak on MacOSX when using the shared libmysql.so library (Bug #2061) · 7e92336b
      monty@mysql.com authored
      mysql_server_init() now returns error code if something went wrong (Bug #2062)
      Don't use my_fopen() when reading symlink information as this may cause problems when a lot of files are opened.
      Free thread keys with pthread_key_delete() instead of relying on automatic free. (Bug #2062)
      Fixed bug in UNION statement with alias '*'. (Bug #1249)
      Fixed a bug in DELETE ... ORDER BY ... LIMIT where the rows where not deleted in the proper order. (Bug #1024).
      FOUND_ROWS() could return incorrect number of rows after a query with an impossible WHERE condition.
      HOW DATABASES doesn't anymore show .sym files (on windows) that doesn't point to a valid directory. (Bug #1385)
      7e92336b
  21. 11 Mar, 2003 1 commit
  22. 06 Dec, 2001 1 commit
  23. 08 Nov, 2001 1 commit
  24. 14 Sep, 2001 1 commit
  25. 21 Aug, 2001 1 commit
  26. 19 Aug, 2001 1 commit
    • monty@hundin.mysql.fi's avatar
      Fix of UNION code · a1be2a89
      monty@hundin.mysql.fi authored
      Added heap_delete_table
      Added HA_EXTRA_PREPARE_FOR_DELETE
      Added and use my_dup() for faster open of tables.
      Removed not working no-mix-table-type
      a1be2a89
  27. 15 Aug, 2000 1 commit
  28. 31 Jul, 2000 1 commit