summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjacksonmj <mj-pt@jacksonmj.co.uk>2011-04-06 21:21:07 (GMT)
committer Simon <simon@hardwired.org.uk>2011-04-08 10:11:48 (GMT)
commitc36c90e800e5ce199efe0d375748b52fb740d686 (patch)
treeb28ed8eba8b1c8eb66eb94a2cc7c947395c8dc56 /src
parent40c4dde34a525ea1a4911c011cabf73f5d93dcc6 (diff)
downloadpowder-c36c90e800e5ce199efe0d375748b52fb740d686.zip
powder-c36c90e800e5ce199efe0d375748b52fb740d686.tar.gz
Workaround for some argument parsing bugginess
Diffstat (limited to 'src')
-rw-r--r--src/main.c6
-rw-r--r--src/misc.c4
2 files changed, 4 insertions, 6 deletions
diff --git a/src/main.c b/src/main.c
index 181c84f..45c307f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2232,13 +2232,11 @@ int main(int argc, char *argv[])
{
file_script = 1;
}
- else if (!strncmp(argv[i], "open:", 5))
+ else if (!strncmp(argv[i], "open", 4) && i+1<argc)
{
int size;
void *file_data;
- char *fn = malloc(strlen(argv[i]+5)+1);
- strcpy(fn, argv[i]+5);
- file_data = file_load(fn, &size);
+ file_data = file_load(argv[i+1], &size);
if (file_data)
{
it=0;
diff --git a/src/misc.c b/src/misc.c
index 86e3834..1295596 100644
--- a/src/misc.c
+++ b/src/misc.c
@@ -428,7 +428,7 @@ int register_extension()
iconname = malloc(strlen(currentfilename)+6);
opencommand = malloc(strlen(currentfilename)+13);
sprintf(iconname, "%s,-102", currentfilename);
- sprintf(opencommand, "\"%s\" open:\"%%1\"", currentfilename);
+ sprintf(opencommand, "\"%s\" open \"%%1\"", currentfilename);
//Create extension entry
rresult = RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Classes\\.cps", 0, 0, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &newkey, NULL);
@@ -519,7 +519,7 @@ int register_extension()
strcpy(desktopfiledata, desktopfiledata_tmp);
strappend(desktopfiledata, "Exec=");
strappend(desktopfiledata, currentfilename);
- strappend(desktopfiledata, " open:%f\n");
+ strappend(desktopfiledata, " open %f\n");
f = fopen("powdertoy-tpt.desktop", "wb");
if (!f)
return 0;