MacOSX/Qt system tweaks

These changes clean up build warnings and allow the resulting "NetHack"
Application icons to be dragged around freely in the Finder, as is expected
for Mac apps.
This commit is contained in:
warwick
2002-01-24 05:49:04 +00:00
parent 3c240e9b4a
commit 654a297052
4 changed files with 17 additions and 8 deletions

View File

@@ -60,7 +60,7 @@ char *argv[];
running from finder --sam */
#define MAC_PATH_VALUE ".app/Contents/MacOS/"
char mac_cwd[1024], *mac_exe = argv[0], *mac_tmp;
int arg0_len = strlen(mac_exe), mac_tmp_len;
int arg0_len = strlen(mac_exe), mac_tmp_len, mac_lhs_len=0;
getcwd(mac_cwd, 1024);
if(mac_exe[0] == '/' && !strcmp(mac_cwd, "/")) {
if((mac_exe = strrchr(mac_exe, '/')))
@@ -72,10 +72,11 @@ char *argv[];
mac_tmp = malloc(mac_tmp_len + 1);
sprintf(mac_tmp, "%s%s%s", mac_exe, MAC_PATH_VALUE, mac_exe);
if(!strcmp(argv[0] + (arg0_len - mac_tmp_len), mac_tmp)) {
if(arg0_len - mac_tmp_len > mac_tmp_len - 1)
mac_tmp = realloc(mac_tmp, arg0_len - mac_tmp_len);
strncpy(mac_tmp, argv[0], arg0_len - mac_tmp_len);
mac_tmp[arg0_len - mac_tmp_len] = '\0';
mac_lhs_len = (arg0_len - mac_tmp_len) + strlen(mac_exe) + 5;
if(mac_lhs_len > mac_tmp_len - 1)
mac_tmp = realloc(mac_tmp, mac_lhs_len);
strncpy(mac_tmp, argv[0], mac_lhs_len);
mac_tmp[mac_lhs_len] = '\0';
chdir(mac_tmp);
}
free(mac_tmp);