~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to storage/myisam/myisampack.c

Merged build changes from Antony.

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#endif
21
21
 
22
22
#include "myisamdef.h"
23
 
#include <queues.h>
24
 
#include <my_tree.h>
25
 
#include "mysys_err.h"
 
23
#include <mysys/queues.h>
 
24
#include <mysys/my_tree.h>
 
25
#include <mysys/mysys_err.h>
26
26
#ifndef __GNU_LIBRARY__
27
27
#define __GNU_LIBRARY__                 /* Skip warnings in getopt.h */
28
28
#endif
29
 
#include <my_getopt.h>
 
29
#include <mysys/my_getopt.h>
30
30
#include <assert.h>
31
31
 
32
32
#if SIZEOF_LONG_LONG > 4
244
244
 
245
245
static struct my_option my_long_options[] =
246
246
{
247
 
#ifdef __NETWARE__
248
 
  {"autoclose", OPT_AUTO_CLOSE, "Auto close the screen on exit for Netware.",
249
 
   0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
250
 
#endif
251
247
  {"backup", 'b', "Make a backup of the table as table_name.OLD.",
252
248
   (char**) &backup, (char**) &backup, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
253
249
  {"character-sets-dir", OPT_CHARSETS_DIR_MP,
279
275
  { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
280
276
};
281
277
 
282
 
#include <help_start.h>
283
 
 
284
278
static void print_version(void)
285
279
{
286
280
  VOID(printf("%s Ver 1.23 for %s on %s\n",
306
300
  my_print_variables(my_long_options);
307
301
}
308
302
 
309
 
#include <help_end.h>
310
 
 
311
303
static bool
312
304
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
313
305
               char *argument)
626
618
  if (!error && !test_only)
627
619
  {
628
620
    uchar buff[MEMMAP_EXTRA_MARGIN];            /* End marginal for memmap */
629
 
    bzero(buff,sizeof(buff));
 
621
    memset(buff, 0, sizeof(buff));
630
622
    error=my_write(file_buffer.file,buff,sizeof(buff),
631
623
                   MYF(MY_WME | MY_NABP | MY_WAIT_IF_FULL)) != 0;
632
624
  }
986
978
        {
987
979
          uint field_length=count->field_length -portable_sizeof_char_ptr;
988
980
          ulong blob_length= _mi_calc_blob_length(field_length, start_pos);
989
 
          memcpy_fixed((char*) &pos,  start_pos+field_length,sizeof(char*));
 
981
          memcpy((char*) &pos,  start_pos+field_length,sizeof(char*));
990
982
          end_pos=pos+blob_length;
991
983
          tot_blob_length+=blob_length;
992
984
          set_if_bigger(count->max_length,blob_length);
1121
1113
  uint space_fields,fill_zero_fields,field_count[(int) FIELD_enum_val_count];
1122
1114
  my_off_t old_length,new_length,length;
1123
1115
 
1124
 
  bzero((uchar*) field_count,sizeof(field_count));
 
1116
  memset((uchar*) field_count, 0, sizeof(field_count));
1125
1117
  space_fields=fill_zero_fields=0;
1126
1118
 
1127
1119
  for (; trees-- ; huff_counts++)
1804
1796
              i->tree->tree_pack_length+j->tree->tree_pack_length+
1805
1797
              ALLOWED_JOIN_DIFF)
1806
1798
          {
1807
 
            memcpy_fixed((uchar*) i->counts,(uchar*) count.counts,
1808
 
                         sizeof(count.counts[0])*256);
 
1799
            memcpy((uchar*) i->counts,(uchar*) count.counts,
 
1800
                   sizeof(count.counts[0])*256);
1809
1801
            my_free((uchar*) j->tree->element_buffer,MYF(0));
1810
1802
            j->tree->element_buffer=0;
1811
1803
            j->tree=i->tree;
1812
 
            bmove((uchar*) i->counts,(uchar*) count.counts,
1813
 
                  sizeof(count.counts[0])*256);
 
1804
            memcpy((uchar*) i->counts,(uchar*) count.counts,
 
1805
                   sizeof(count.counts[0])*256);
1814
1806
            if (make_huff_tree(i->tree,i))
1815
1807
              return (uint) -1;
1816
1808
          }
1952
1944
{
1953
1945
  uchar *buff= (uchar*) file_buffer.pos;
1954
1946
 
1955
 
  bzero(buff,HEAD_LENGTH);
1956
 
  memcpy_fixed(buff,myisam_pack_file_magic,4);
 
1947
  memset(buff, 0, HEAD_LENGTH);
 
1948
  memcpy(buff,myisam_pack_file_magic,4);
1957
1949
  int4store(buff+4,head_length);
1958
1950
  int4store(buff+8, mrg->min_pack_length);
1959
1951
  int4store(buff+12,mrg->max_pack_length);
2484
2476
            write_bits(0,1);
2485
2477
            /* Write the blob length. */
2486
2478
            write_bits(blob_length,count->length_bits);
2487
 
            memcpy_fixed(&blob,end_pos-portable_sizeof_char_ptr,
2488
 
                         sizeof(char*));
 
2479
            memcpy(&blob,end_pos-portable_sizeof_char_ptr, sizeof(char*));
2489
2480
            blob_end=blob+blob_length;
2490
2481
            /* Encode the blob bytes. */
2491
2482
            for ( ; blob < blob_end ; blob++)
2540
2531
      /* Correct file buffer if the header was smaller */
2541
2532
      if (pack_length != max_pack_length)
2542
2533
      {
2543
 
        bmove(record_pos+pack_length,record_pos+max_pack_length,length);
 
2534
        memcpy(record_pos+pack_length,record_pos+max_pack_length,length);
2544
2535
        file_buffer.pos-= (max_pack_length-pack_length);
2545
2536
      }
2546
2537
      if (length < (ulong) min_record_length)