summaryrefslogtreecommitdiff
path: root/net/psi/files/patch-aa
blob: 930d9fdaaa5318a7128e66d9f459e741897dfde5 (plain) (blame)
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
55
56
57
58
diff -ur cutestuff.ori/openpgp/gpgop.cpp cutestuff/openpgp/gpgop.cpp
--- cutestuff.ori/openpgp/gpgop.cpp	Tue Nov 18 18:07:55 2003
+++ cutestuff/openpgp/gpgop.cpp	Tue Nov 18 18:13:37 2003
@@ -543,18 +543,33 @@
 		return false;
 
 	QStringList::ConstIterator it = lines.begin();
+	QString keyring;
+	int ver = 0;
 
-	// first line is keyring file
-	QString keyring = *(it++);
-
-	// skip past the divider
+	// check if gnupg version is 1.2.3 or below
 	for(; it != lines.end(); ++it) {
-		if((*it).at(0) == '-')
-			break;
+	   if((*it).at(0) == '-') {
+	      ver = 1;
+	      break;
+	   }
+	}
+	
+	it = lines.begin();
+
+	// if gnupg version is 1.2.2 and below first line is keyring
+	if(ver) {
+	   // first line is keyring file
+	   keyring = *(it++);
+
+	   // skip past the divider
+	   for(; it != lines.end(); ++it) {
+	      if((*it).at(0) == '-')
+		 break;
+	   }
+	   if(it == lines.end())
+	      return false;
+	   ++it;
 	}
-	if(it == lines.end())
-		return false;
-	++it;
 
 	OpenPGP::Key *k = 0;
 	for(; it != lines.end(); ++it) {
@@ -620,8 +635,9 @@
 
 	if(_keylist)
 		*_keylist = keyList;
-	if(_keyring)
-		*_keyring = keyring;
+	if(ver)
+	   if(_keyring)
+	      *_keyring = keyring;
 
 	return true;
 }