From: GiWoong Kim Date: Tue, 29 Apr 2014 05:09:19 +0000 (+0900) Subject: skin: using binary path for external file access X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.1~391 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0117d6f3d24305b2678534a5515b0b38a90e3bb9;p=sdk%2Femulator%2Fqemu.git skin: using binary path for external file access Change-Id: Idfdb1f0454bd17e341d721fec019eefd7f6dcef6 Signed-off-by: GiWoong Kim --- diff --git a/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkinMain.java b/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkinMain.java index 6c8ebbb01c..7bc8859aef 100644 --- a/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkinMain.java +++ b/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkinMain.java @@ -122,6 +122,7 @@ public class EmulatorSkinMain { ArgsConstants.VM_PATH + " in arguments is null."); } + /* initialize logging system */ SkinLogger.init(SkinLogLevel.DEBUG, vmPath); logger = SkinLogger.getSkinLogger(EmulatorSkinMain.class).getLogger(); @@ -138,7 +139,7 @@ public class EmulatorSkinMain { logger.info("swt platform : " + SWT.getPlatform()); logger.info("swt version : " + SWT.getVersion()); - logger.info("working directory" + System.getProperty("user.dir")); + logger.info("working directory : " + System.getProperty("user.dir")); /* startup arguments parsing */ Map argsMap = parseArgs(args); diff --git a/tizen/src/skin/client/src/org/tizen/emulator/skin/util/SkinUtil.java b/tizen/src/skin/client/src/org/tizen/emulator/skin/util/SkinUtil.java index e2c9ac5f77..8cce8a619e 100644 --- a/tizen/src/skin/client/src/org/tizen/emulator/skin/util/SkinUtil.java +++ b/tizen/src/skin/client/src/org/tizen/emulator/skin/util/SkinUtil.java @@ -36,6 +36,7 @@ import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import java.net.URISyntaxException; import java.util.List; import java.util.Properties; import java.util.logging.Level; @@ -78,6 +79,24 @@ public class SkinUtil { private static Logger logger = SkinLogger.getSkinLogger(SkinUtil.class).getLogger(); + private static String binaryPath; + + static { + File executable = null; + try { + executable = new File(SkinUtil.class.getProtectionDomain().getCodeSource() + .getLocation().toURI().getPath()); + } catch (URISyntaxException e) { + e.printStackTrace(); + } + + if (executable != null) { + binaryPath = executable.getParent() + File.separator; + } else { + binaryPath = ""; + } + } + private SkinUtil() { /* do nothing */ } @@ -151,21 +170,21 @@ public class SkinUtil { String sdbPath = null; if (SwtUtil.isWindowsPlatform()) { - sdbPath = ".\\..\\..\\ansicon.exe"; + sdbPath = "..\\..\\ansicon.exe"; } else { - sdbPath = "./../../sdb"; + sdbPath = "../../sdb"; } - return sdbPath; + return (binaryPath + sdbPath); } public static String getEcpPath() { - return "emulator-control-panel.jar"; + return (binaryPath + "emulator-control-panel.jar"); } public static String getSdkVersionFilePath() { - return ".." + File.separator + ".." + File.separator + - ".." + File.separator + "sdk.version"; + return (binaryPath + ".." + File.separator + ".." + + File.separator + ".." + File.separator + "sdk.version"); } public static List getHWKeyMapList(short rotationId) { @@ -1044,18 +1063,12 @@ public class SkinUtil { logger.info("set Always on Top : " + isOnTop); - /* internal/Library.java::arch() */ - String osArch = System.getProperty("os.arch"); /* $NON-NLS-1$ */ - - if (osArch.equals("amd64") || osArch.equals("x86_64") || - osArch.equals("IA64W") || osArch.equals("ia64")) { - /* $NON-NLS-1$ $NON-NLS-2$ $NON-NLS-3$ */ - logger.info("64bit architecture : " + osArch); - + if (SwtUtil.is64bitPlatform() == true) { + logger.info("64bit architecture : " + System.getProperty("os.arch")); return setTopMost64(shell, isOnTop); /* 64bit */ } - logger.info("32bit architecture : " + osArch); + logger.info("32bit architecture : " + System.getProperty("os.arch")); return setTopMost32(shell, isOnTop); /* 32bit */ } }