#include "emul_state.h"
+#include <libgen.h>
#include "emulator_common.h"
#if defined(CONFIG_LINUX)
return log_path;
}
#endif
- char *log_path = get_variable("log_path");
+ const char *log_path = get_variable("log_path");
- // if "log_path" is not exist, make it first
+ // if "log_path" is not exist, make it first.
if (!log_path) {
char *vms_path = get_variable("vms_path");
char *vm_name = get_variable("vm_name");
if (!vms_path || !vm_name) {
- log_path = NULL;
+ // we can not specify log path.
+ // emulator may not be launched from emulator-manager.
+ log_path = "";
}
else {
log_path = g_strdup_printf("%s/%s/logs", vms_path, vm_name);
/* vm name */
const char* get_emul_vm_name(void)
{
- if (!_emul_info.vm_name) {
- _emul_info.vm_name = get_variable("vm_name");
+ const char *vm_name = get_variable("vm_name");
+
+ // if there is no "vm_name" we make it from drive image name.
+ if (!vm_name) {
+ char *drive_file = g_strdup(get_drive_image_file());
+ set_variable("vm_name", basename(drive_file), true);
+ g_free(drive_file);
+
+ vm_name = get_variable("vm_name");
}
- return _emul_info.vm_name;
+ return vm_name;
}
/* http proxy */