forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cdda2wav_version.patch
54 lines (48 loc) · 1.46 KB
/
cdda2wav_version.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
diff -urNad xcdroast-0.98+0alpha16~/src/io.c xcdroast-0.98+0alpha16/src/io.c
--- xcdroast-0.98+0alpha16~/src/io.c 2008-08-21 15:11:40.000000000 +0200
+++ xcdroast-0.98+0alpha16/src/io.c 2009-12-29 22:54:08.571188849 +0100
@@ -10062,6 +10062,7 @@
gint check_version_cdda2wav(gchar *match, gchar *found) {
gchar line[MAXLINE];
+gchar vline[MAXLINE];
gchar ver[MAXLINE];
FILE *fpin;
gchar *p;
@@ -10076,32 +10077,38 @@
}
strcpy(line,"");
+ strcpy(vline,"");
for (;;) {
if (fgets(line,MAXLINE,fpin) == NULL)
break;
dodebug(10,"got: %s",line);
+
+ /* only get first line */
+ if (strcmp(vline,"") == 0) {
+ strncpy(vline, line, MAXLINE);
+ }
}
if (pclose(fpin) == -1) {
g_error("pclose error\n");
}
- if (strcmp(line,"") == 0 || strstr(line,"sh:") != NULL) {
+ if (strcmp(vline,"") == 0 || strstr(vline,"sh:") != NULL) {
/* failed to open - permission denied */
return 2;
}
- /* now line contains the version string of cdda2wav */
+ /* now vline contains the version string of cdda2wav */
/* try to extract the version number */
- p = strstr(line,"version");
+ p = strstr(vline,"version");
if (p != NULL) {
p = strtok(p+8, " _");
if (p != NULL) {
strcpy(ver,p);
}
} else {
- p = strstr(line,"cdda2wav");
+ p = strstr(vline,"cdda2wav");
if (p != NULL) {
p = strtok(p+9, " ");
if (p != NULL) {