Skip to content

Commit

Permalink
Change from iconv to SDL_iconv
Browse files Browse the repository at this point in the history
  • Loading branch information
bubio committed Oct 23, 2023
1 parent 6e047cb commit 6738bb8
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 14 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ set(CPACK On)

# Set link options
if(APPLE)
target_link_libraries(${BIN_TARGET} PRIVATE SDL2::SDL2 iconv xbrz)
target_link_libraries(${BIN_TARGET} PRIVATE SDL2::SDL2 xbrz)
else()
target_link_libraries(${BIN_TARGET} PRIVATE ${SDL2_LIBRARIES} xbrz)
endif()
Expand Down
22 changes: 11 additions & 11 deletions Source/UI/converter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -96,26 +96,26 @@ void Converter::Deinit()
//
int Converter::Utf8macToUtf8(const char *src, char *dst, size_t len)
{
iconv_t conv; // conversion descriptor
SDL_iconv_t conv; // conversion descriptor
char buf[_MAX_PATH];
char *src_buf = buf;
const char *src_buf = buf;
char *dst_buf = dst;
size_t src_len = strlen(src);
size_t dst_len = len - 1;
int ret = 0;
strncpy(buf, src, sizeof(buf));
if ((conv = iconv_open("UTF-8", "UTF-8-MAC")) == (iconv_t) - 1) {
pr_err("error: %s: %s\n", __FUNCTION__, "iconv open");
return -errno;
if ((conv = SDL_iconv_open("UTF-8", "UTF-8-MAC")) == (SDL_iconv_t) - 1) {
fprintf(stderr, "error: %s: %s\n", __FUNCTION__, SDL_GetError());
return -1;
}
if (iconv(conv, &src_buf, &src_len, &dst_buf, &dst_len) == (size_t) - 1) {
pr_err("error: %s: %s\n", __FUNCTION__, "iconv");
ret = -errno;
if (SDL_iconv(conv, &src_buf, &src_len, &dst_buf, &dst_len) == (size_t) - 1) {
fprintf(stderr, "error: %s: %s\n", __FUNCTION__, SDL_GetError());
ret = -1;
}
*dst_buf = '\0';
if (iconv_close(conv) == -1) {
pr_err("error: %s: %s\n", __FUNCTION__, "iconv_close");
ret = -errno;
if (SDL_iconv_close(conv) == -1) {
fprintf(stderr, "error: %s: %s\n", __FUNCTION__, SDL_GetError());
ret = -1;
}

return ret;
Expand Down
2 changes: 0 additions & 2 deletions Source/UI/os.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,7 @@
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <iconv.h>
#include <errno.h>
#define pr_err(fmt, ...) fprintf(stderr, fmt, ##__VA_ARGS__)
#endif // __APPLE__

#endif // OS_H
Expand Down

0 comments on commit 6738bb8

Please sign in to comment.