mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Fixes for Ia64
Docs/manual.texi: Updated thread safe client chapter + new links client/sql_string.cc: Update for Ia64 client/sql_string.h: Update for Ia64 extra/replace.c: Update for Ia64 include/config-win.h: Update for PHP include/global.h: Update for PHP isam/create.c: Update for Ia64 isam/delete.c: Update for Ia64 isam/write.c: Update for Ia64 libmysql/Makefile.shared: new file libmysql/libmysql.c: Update for Ia64 libmysql/net.c: Update for Ia64 myisam/mi_delete.c: Update for Ia64 myisam/mi_search.c: Update for Ia64 sql/field.cc: Update for Ia64 sql/field.h: Update for Ia64 sql/item.h: Update for Ia64 sql/item_strfunc.cc: Update for Ia64 sql/lock.cc: Update for Ia64 sql/log.cc: Update for Ia64 sql/log_event.h: Update for Ia64 sql/net_serv.cc: Update for Ia64 sql/sql_list.h: Update for Ia64 sql/sql_parse.cc: Update for Ia64 sql/sql_rename.cc: Update for Ia64 sql/sql_select.cc: Update for Ia64 sql/sql_show.cc: Update for Ia64 sql/sql_string.cc: Update for Ia64 sql/sql_string.h: Update for Ia64 sql/time.cc: Update for Ia64
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
This program file is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
@ -127,7 +127,7 @@ bool String::set(double num,uint decimals)
|
||||
if (decimals >= NOT_FIXED_DEC)
|
||||
{
|
||||
sprintf(buff,"%.14g",num); // Enough for a DATETIME
|
||||
return copy(buff,strlen(buff));
|
||||
return copy(buff, (uint32) strlen(buff));
|
||||
}
|
||||
#ifdef HAVE_FCONVERT
|
||||
int decpt,sign;
|
||||
@ -142,7 +142,7 @@ bool String::set(double num,uint decimals)
|
||||
buff[0]='-';
|
||||
pos=buff;
|
||||
}
|
||||
return copy(pos,strlen(pos));
|
||||
return copy(pos,(uint32) strlen(pos));
|
||||
}
|
||||
if (alloc((uint32) ((uint32) decpt+3+decimals)))
|
||||
return TRUE;
|
||||
@ -186,12 +186,13 @@ end:
|
||||
str_length=(uint32) (to-Ptr);
|
||||
return FALSE;
|
||||
#else
|
||||
#ifdef HAVE_SNPRINTF_
|
||||
snprintf(buff,sizeof(buff), "%.*f",(int) decimals,num);
|
||||
#ifdef HAVE_SNPRINTF
|
||||
buff[sizeof(buff)-1]=0; // Safety
|
||||
snprintf(buff,sizeof(buff)-1, "%.*f",(int) decimals,num);
|
||||
#else
|
||||
sprintf(buff,"%.*f",(int) decimals,num);
|
||||
#endif
|
||||
return copy(buff,strlen(buff));
|
||||
return copy(buff,(uint32) strlen(buff));
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -260,7 +261,7 @@ bool String::append(const String &s)
|
||||
bool String::append(const char *s,uint32 arg_length)
|
||||
{
|
||||
if (!arg_length) // Default argument
|
||||
arg_length=strlen(s);
|
||||
arg_length= (uint32) strlen(s);
|
||||
if (realloc(str_length+arg_length))
|
||||
return TRUE;
|
||||
memcpy(Ptr+str_length,s,arg_length);
|
||||
@ -268,6 +269,19 @@ bool String::append(const char *s,uint32 arg_length)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool String::append(FILE* file, uint32 arg_length, myf my_flags)
|
||||
{
|
||||
if (realloc(str_length+arg_length))
|
||||
return TRUE;
|
||||
if (my_fread(file, (byte*) Ptr + str_length, arg_length, my_flags))
|
||||
{
|
||||
shrink(str_length);
|
||||
return TRUE;
|
||||
}
|
||||
str_length+=arg_length;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
uint32 String::numchars()
|
||||
{
|
||||
#ifdef USE_MB
|
||||
@ -305,7 +319,7 @@ int String::charpos(int i,uint32 offset)
|
||||
if ( INT_MAX32-i <= (int) (mbstr-Ptr-offset))
|
||||
return INT_MAX32;
|
||||
else
|
||||
return (mbstr-Ptr-offset)+i;
|
||||
return (int) ((mbstr-Ptr-offset)+i);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
@ -317,7 +331,7 @@ int String::strstr(const String &s,uint32 offset)
|
||||
if (s.length()+offset <= str_length)
|
||||
{
|
||||
if (!s.length())
|
||||
return offset; // Empty string is always found
|
||||
return ((int) offset); // Empty string is always found
|
||||
|
||||
register const char *str = Ptr+offset;
|
||||
register const char *search=s.ptr();
|
||||
@ -587,6 +601,7 @@ static int wild_case_compare(const char *str,const char *str_end,
|
||||
#ifdef USE_MB
|
||||
const char* mb = wildstr;
|
||||
int mblen;
|
||||
LINT_INIT(mblen);
|
||||
if (use_mb_flag)
|
||||
mblen = my_ismbchar(default_charset_info, wildstr, wildend);
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user