summaryrefslogtreecommitdiff
path: root/mail/bincimap
diff options
context:
space:
mode:
authorVanilla I. Shu <vanilla@FreeBSD.org>2003-05-06 09:07:48 +0000
committerVanilla I. Shu <vanilla@FreeBSD.org>2003-05-06 09:07:48 +0000
commite3fc9b5f522b4c2fb3ead0e029b34b8aba0b278b (patch)
tree84fdb8433c92058e41acc62ab04cd7f08ee565a9 /mail/bincimap
parentUpgrade to 0.6.1. (diff)
Fix broken on alpha.
PR: ports/51800 Submitted by: maintainer.
Notes
Notes: svn path=/head/; revision=80245
Diffstat (limited to 'mail/bincimap')
-rw-r--r--mail/bincimap/files/patch-src::util::convert.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/mail/bincimap/files/patch-src::util::convert.h b/mail/bincimap/files/patch-src::util::convert.h
new file mode 100644
index 000000000000..4168ff7e6701
--- /dev/null
+++ b/mail/bincimap/files/patch-src::util::convert.h
@@ -0,0 +1,39 @@
+replace switch statement in inline function with if/then/else; fixes compiler
+failure on alpha: ``relocation truncated to fit: GPREL32 *UND*''
+
+diff -u -r1.4 convert.h
+--- src/util/convert.h 8 Apr 2003 16:46:28 -0000 1.4
++++ src/util/convert.h 9 Apr 2003 08:02:54 -0000
+@@ -269,6 +269,7 @@
+ {
+ std::string regex = "^";
+ for (std::string::const_iterator i = s_in.begin(); i != s_in.end(); ++i) {
++ /*
+ switch (*i) {
+ case '.':
+ case '[': case ']':
+@@ -291,6 +292,24 @@
+ default:
+ regex += *i;
+ break;
++ }
++ */
++ if (*i == '.' || *i == '[' || *i == ']' || *i == '{' || *i == '}' ||
++ *i == '(' || *i == ')' || *i == '^' || *i == '$' || *i == '?' ||
++ *i == '+' || *i == '\\') {
++ regex += "\\";
++ regex += *i;
++ }
++ else if (*i == '*') {
++ regex += ".*?";
++ }
++ else if (*i == '%') {
++ regex += "[^\\";
++ regex += delimiter;
++ regex += "]*?";
++ }
++ else {
++ regex += *i;
+ }
+ }
+