~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to mysys/mf_iocache2.c

Moved my_getopt.h

Show diffs side-by-side

added added

removed removed

Lines of Context:
341
341
    }
342
342
    else
343
343
    {
344
 
      while (my_isdigit(&my_charset_utf8_general_ci, *fmt)) {
 
344
      while (my_isdigit(&my_charset_latin1, *fmt)) {
345
345
        minimum_width=(minimum_width * 10) + (*fmt - '0');
346
346
        fmt++;
347
347
      }
357
357
      }
358
358
      else
359
359
      {
360
 
        while (my_isdigit(&my_charset_utf8_general_ci, *fmt)) {
 
360
        while (my_isdigit(&my_charset_latin1, *fmt)) {
361
361
          precision=(precision * 10) + (*fmt - '0');
362
362
          fmt++;
363
363
        }
370
370
      size_t length2 = strlen(par);
371
371
      /* TODO: implement precision */
372
372
      out_length+= length2;
373
 
      if (my_b_write(info, (const uchar*) par, length2))
 
373
      if (my_b_write(info, (uchar*) par, length2))
374
374
        goto err;
375
375
    }
376
376
    else if (*fmt == 'b')                       /* Sized buffer parameter, only precision makes sense */
377
377
    {
378
378
      char *par = va_arg(args, char *);
379
379
      out_length+= precision;
380
 
      if (my_b_write(info, (const uchar*) par, precision))
 
380
      if (my_b_write(info, (uchar*) par, precision))
381
381
        goto err;
382
382
    }
383
383
    else if (*fmt == 'd' || *fmt == 'u')        /* Integer parameter */
395
395
      /* minimum width padding */
396
396
      if (minimum_width > length2) 
397
397
      {
398
 
        const size_t buflen = minimum_width - length2;
399
 
        uchar *buffz= my_alloca(buflen);
400
 
        memset(buffz, is_zero_padded ? '0' : ' ', buflen);
401
 
        my_b_write(info, buffz, buflen);
 
398
        uchar *buffz;
 
399
                    
 
400
        buffz= my_alloca(minimum_width - length2);
 
401
        if (is_zero_padded)
 
402
          memset(buffz, '0', minimum_width - length2);
 
403
        else
 
404
          memset(buffz, ' ', minimum_width - length2);
 
405
        my_b_write(info, buffz, minimum_width - length2);
402
406
        my_afree(buffz);
403
407
      }
404
408
 
405
409
      out_length+= length2;
406
 
      if (my_b_write(info, (const uchar *)buff, length2))
 
410
      if (my_b_write(info, (uchar*) buff, length2))
407
411
        goto err;
408
412
    }
409
413
    else if ((*fmt == 'l' && fmt[1] == 'd') || fmt[1] == 'u')
425
429
    else
426
430
    {
427
431
      /* %% or unknown code */
428
 
      if (my_b_write(info, (const uchar*) backtrack, (size_t) (fmt-backtrack)))
 
432
      if (my_b_write(info, (uchar*) backtrack, (size_t) (fmt-backtrack)))
429
433
        goto err;
430
434
      out_length+= fmt-backtrack;
431
435
    }