From 5e11064775c7df5bad7e9bb1b665aabbf42295be Mon Sep 17 00:00:00 2001 From: adam Date: Tue, 17 Jan 2006 03:45:16 +0000 Subject: [PATCH] more hacks in Headers.java... darcs-hash:20060117034516-5007d-3677f5fa3b9183a6cddb677c29d7378a93f72c6f.gz --- src/org/ibex/mail/Headers.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/org/ibex/mail/Headers.java b/src/org/ibex/mail/Headers.java index 3275423..caf0c11 100644 --- a/src/org/ibex/mail/Headers.java +++ b/src/org/ibex/mail/Headers.java @@ -28,26 +28,26 @@ public class Headers extends JS.Immutable implements Fountain { if (ret==null) ret = (String)head.get(s.toLowerCase()); return ret; } + public void remove(String k) { put(k, null); } public void put(String k, String v) { Stream stream = getStream(); StringBuffer all = new StringBuffer(); int lines = 0; - boolean good = false; String key = null; for(String s = stream.readln(); s != null && !s.equals(""); s = stream.readln()) { - if (Character.isSpace(s.charAt(0))) { all.append(s); all.append("\r\n"); lines++; continue; } - if (s.indexOf(':') == -1) throw new Malformed("Header line does not contain colon: " + s); - key = s.substring(0, s.indexOf(':')).toLowerCase(); - lines++; + if (!Character.isSpace(s.charAt(0))) { + if (s.indexOf(':') == -1) throw new Malformed("Header line does not contain colon: " + s); + key = s.substring(0, s.indexOf(':')).toLowerCase(); + } if (key.toLowerCase().equals(k.toLowerCase())) { - good = true; - all.append(k + ": " + v + "\r\n"); + if (v != null) { all.append(k + ": " + v + "\r\n"); lines++; v = null; } continue; } all.append(s); all.append("\r\n"); + lines++; } - if (!good) { + if (v != null) { lines++; all.append(k + ": " + v + "\r\n"); } -- 1.7.10.4