Fix [JACKSON-841]

diff --git a/release-notes/CREDITS b/release-notes/CREDITS
index aa16341..5dffc88 100644
--- a/release-notes/CREDITS
+++ b/release-notes/CREDITS
@@ -920,3 +920,7 @@
   * Reported [JACKSON-838]: Utf8StreamParser._reportInvalidToken() skips
     letters from reported token name
    [1.9.8]
+
+Scott Stanton:
+  * Reported [JACKSON-841] Data is doubled in SegmentedStringWriter output
+   [1.9.8]
diff --git a/release-notes/VERSION b/release-notes/VERSION
index 9658722..37881a2 100644
--- a/release-notes/VERSION
+++ b/release-notes/VERSION
@@ -11,6 +11,8 @@
   * [JACKSON-838]: Utf8StreamParser._reportInvalidToken() skips letters
     from reported token name
    (reported by Lóránt Pintér)
+  * [JACKSON-841] Data is doubled in SegmentedStringWriter output
+  (reported by Scott S)
 
 ------------------------------------------------------------------------
 === History: ===
diff --git a/src/java/org/codehaus/jackson/io/SegmentedStringWriter.java b/src/java/org/codehaus/jackson/io/SegmentedStringWriter.java
index 8d9884d..715b1d1 100644
--- a/src/java/org/codehaus/jackson/io/SegmentedStringWriter.java
+++ b/src/java/org/codehaus/jackson/io/SegmentedStringWriter.java
@@ -79,7 +79,7 @@
 
     @Override
     public void write(String str, int off, int len) {
-        _buffer.append(str, 0, str.length());
+        _buffer.append(str, off, len);
     }
 
     /*