/* 3 */ "Failed to load a bios file the following path.\
Check if the file is corrupted or missing.\n\n",
/* 4 */ "Skin process cannot be initialized. Skin server is not ready.",
+ /* 5 */ "Skin client cannot connected to Skin server. The time of internal heartbeat has expired.",
/* add here.. */
""
};
int len = 0;
if (maru_exit_index >= MARU_EXIT_NORMAL) {
+ fprintf(stderr, "Invalid error message index = %d\n", maru_exit_index);
+ return;
+ }
+ if (maru_exit_status != MARU_EXIT_NORMAL) {
+ fprintf(stderr, "The error message is already registered = %d\n", maru_exit_status);
return;
}
pstrcpy(maru_exit_msg, strlen(additional_msg) + 1, additional_msg);
}
+
+ fprintf(stdout, "The error message is registered = %d : %s\n",
+ maru_exit_status, maru_exit_msg);
}
void maru_atexit(void)
dos_err_msg = g_strdup(err_msg);
if (!dos_err_msg) {
- printf(stderr,
+ fprintf(stderr,
"failed to duplicate an error message from %p\n", err_msg);
if (current_path) {
g_free(current_path);
free(symbols);
#endif
}
+
/* 2 */ MARU_EXIT_KERNEL_FILE_EXCEPTION,
/* 3 */ MARU_EXIT_BIOS_FILE_EXCEPTION,
/* 4 */ MARU_EXIT_SKIN_SERVER_FAILED,
+ /* 5 */ MARU_EXIT_HB_TIME_EXPIRED,
/* add here.. */
MARU_EXIT_NORMAL
};
#include "emul_state.h"
#include "maruskin_client.h"
#include "emulator.h"
+#include "maru_err_table.h"
#ifndef USE_SHM
#include "maru_sdl.h"
if (booting_handicap_cnt < 5) {
booting_handicap_cnt++;
ts_heartbeat.tv_sec = current.tv_sec +
- (HEART_BEAT_INTERVAL * (HEART_BEAT_FAIL_COUNT / 2));
+ (HEART_BEAT_INTERVAL * 10);
} else {
ts_heartbeat.tv_sec = current.tv_sec + HEART_BEAT_INTERVAL;
}
ERR( "!!! Fail to operate with heartbeat from skin client. Shutdown QEMU !!!\n" );
ERR( "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n" );
+ maru_register_exit_msg(MARU_EXIT_HB_TIME_EXPIRED, NULL);
shutdown_qemu_gracefully();
}