call strlen one less time
This commit is contained in:
parent
3fc8c92ecd
commit
bce6cc7aaa
@ -1684,6 +1684,7 @@ byte Button_Load_or_Save(T_Selector_settings *settings, byte load, T_IO_Context
|
|||||||
short window_shortcut;
|
short window_shortcut;
|
||||||
const char * directory_to_change_to = NULL;
|
const char * directory_to_change_to = NULL;
|
||||||
int load_from_clipboard = 0;
|
int load_from_clipboard = 0;
|
||||||
|
size_t filename_length = 0;
|
||||||
|
|
||||||
Selector=settings;
|
Selector=settings;
|
||||||
|
|
||||||
@ -2087,13 +2088,16 @@ byte Button_Load_or_Save(T_Selector_settings *settings, byte load, T_IO_Context
|
|||||||
Unicode_char_strlcpy(filename_unicode, Selector->filename, sizeof(filename_unicode)/sizeof(word));
|
Unicode_char_strlcpy(filename_unicode, Selector->filename, sizeof(filename_unicode)/sizeof(word));
|
||||||
#ifdef ENABLE_FILENAMES_ICONV
|
#ifdef ENABLE_FILENAMES_ICONV
|
||||||
// convert from UTF8 to ANSI
|
// convert from UTF8 to ANSI
|
||||||
if (Selector->filename != NULL && strlen(Selector->filename) > 0) {
|
if (Selector->filename != NULL) {
|
||||||
char * input = (char *)Selector->filename;
|
filename_length = strlen(Selector->filename);
|
||||||
size_t inbytesleft = strlen(input);
|
if (filename_length > 0) {
|
||||||
char * output = filename_ansi;
|
char * input = (char *)Selector->filename;
|
||||||
size_t outbytesleft = sizeof(filename_ansi)-1;
|
size_t inbytesleft = filename_length;
|
||||||
if(cd != (iconv_t)-1 && (ssize_t)iconv(cd, &input, &inbytesleft, &output, &outbytesleft) >= 0)
|
char * output = filename_ansi;
|
||||||
*output = '\0';
|
size_t outbytesleft = sizeof(filename_ansi)-1;
|
||||||
|
if(cd != (iconv_t)-1 && (ssize_t)iconv(cd, &input, &inbytesleft, &output, &outbytesleft) >= 0)
|
||||||
|
*output = '\0';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif /* ENABLE_FILENAMES_ICONV */
|
#endif /* ENABLE_FILENAMES_ICONV */
|
||||||
#if defined(WIN32) || defined(ENABLE_FILENAMES_ICONV)
|
#if defined(WIN32) || defined(ENABLE_FILENAMES_ICONV)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user