Mercurial > pidgin
diff src/gaimrc.c @ 1214:0baf39dc5437
[gaim-migrate @ 1224]
can choose to run command to play sounds
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Fri, 08 Dec 2000 07:46:22 +0000 |
parents | 7aec3f881c98 |
children | 229bf438c591 |
line wrap: on
line diff
--- a/src/gaimrc.c Fri Dec 08 06:21:44 2000 +0000 +++ b/src/gaimrc.c Fri Dec 08 07:46:22 2000 +0000 @@ -49,6 +49,7 @@ char web_command[2048]; char latest_ver[25]; char *sound_file[NUM_SOUNDS]; +char sound_cmd[2048]; struct parse { char option[256]; @@ -703,6 +704,7 @@ for (i = 0; i < NUM_SOUNDS; i++) sound_file[i] = NULL; + sound_cmd[0] = 0; while (buf[0] != '}') { if (buf[0] == '#') @@ -713,16 +715,15 @@ p = parse_line(buf); - sscanf(p->option, "sound%c", (char *)&i); - i -= 'A'; - - if (p->value[0][0]) - sound_file[i] = g_strdup(p->value[0]); -/* else - sound_file[i] = NULL; - Removed by Rob. Kill me if this is retarded. - Tis was causing segfaults on PPC machines, though. -*/ + if (!strcmp(p->option, "sound_cmd")) { + g_snprintf(sound_cmd, sizeof(sound_cmd), "%s", p->value[0]); + } else if (!strncmp(p->option, "sound", strlen("sound"))) { + sscanf(p->option, "sound%c", (char *)&i); + i -= 'A'; + + if (p->value[0][0]) + sound_file[i] = g_strdup(p->value[0]); + } } } @@ -735,6 +736,7 @@ fprintf(f, "\tsound%c { %s }\n", i + 'A', sound_file[i]); else fprintf(f, "\tsound%c { }\n", i + 'A'); + fprintf(f, "\tsound_cmd { %s }\n", sound_cmd); fprintf(f, "}\n"); }