#include <time.h>
#include <sys/time.h>
#include <glib.h>
+#include "config.h"
#include "file.h"
#include "item.h"
#include "debug.h"
+#ifdef HAVE_API_ANDROID
+#include <android/log.h>
+#endif
+
#ifdef DEBUG_WIN32_CE_MESSAGEBOX
#include <windows.h>
#include <windowsx.h>
static void
debug_update_level(gpointer key, gpointer value, gpointer user_data)
{
- if (debug_level < (int) value)
- debug_level=(int) value;
+ if (debug_level < GPOINTER_TO_INT(value))
+ debug_level = GPOINTER_TO_INT(value);
}
void
-debug_level_set(const char *name, int level)
+debug_level_set(const char *name, gint level)
{
if (!strcmp(name, "segv")) {
segv_level=level;
timestamp_prefix=level;
} else {
debug_level=0;
- g_hash_table_insert(debug_hash, g_strdup(name), (gpointer) level);
+ g_hash_table_insert(debug_hash, g_strdup(name), GINT_TO_POINTER(level));
g_hash_table_foreach(debug_hash, debug_update_level, NULL);
}
}
{
if (!debug_hash)
return 0;
- return (int)(g_hash_table_lookup(debug_hash, name));
+ return GPOINTER_TO_INT(g_hash_table_lookup(debug_hash, name));
}
static void debug_timestamp(FILE *fp)
sprintf(buffer, "%s:%s", module, function);
if (debug_level_get(module) >= level || debug_level_get(buffer) >= level) {
-#ifndef DEBUG_WIN32_CE_MESSAGEBOX
+#if defined(DEBUG_WIN32_CE_MESSAGEBOX) || defined(HAVE_API_ANDROID)
+ char xbuffer[4096];
+ wchar_t muni[4096];
+ int len=0;
+ if (prefix) {
+ strcpy(xbuffer,buffer);
+ len=strlen(buffer);
+ xbuffer[len++]=':';
+ }
+ vsprintf(xbuffer+len,fmt,ap);
+#endif
+#ifdef DEBUG_WIN32_CE_MESSAGEBOX
+ mbstowcs(muni, xbuffer, strlen(xbuffer)+1);
+ MessageBoxW(NULL, muni, TEXT("Navit - Error"), MB_APPLMODAL|MB_OK|MB_ICONERROR);
+#else
+#ifdef HAVE_API_ANDROID
+ __android_log_print(ANDROID_LOG_ERROR,"navit", "%s", xbuffer);
+#else
if (! fp)
fp = stderr;
if (timestamp_prefix)
fprintf(fp,"%s:",buffer);
vfprintf(fp,fmt, ap);
fflush(fp);
-#else
- wchar_t muni[4096];
- char xbuffer[4096];
- int len=0;
- if (prefix) {
- strcpy(xbuffer,buffer);
- len=strlen(buffer);
- xbuffer[len++]=':';
- }
- vsprintf(xbuffer+len,fmt,ap);
- mbstowcs(muni, xbuffer, strlen(xbuffer)+1);
- MessageBoxW(NULL, muni, TEXT("Navit - Error"), MB_APPLMODAL|MB_OK|MB_ICONERROR);
+#endif
#endif
}
}