From ad5285586d8a1e681a97c75f4bad46c77974028b Mon Sep 17 00:00:00 2001
From: Garet Halliday <me@garet.holiday>
Date: Wed, 5 Jun 2024 16:29:35 -0500
Subject: [PATCH] hmmm

---
 lib/fed/encoder.go | 3 +++
 lib/fed/packet.go  | 2 --
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/fed/encoder.go b/lib/fed/encoder.go
index 4daf795f..62fe9e9e 100644
--- a/lib/fed/encoder.go
+++ b/lib/fed/encoder.go
@@ -43,6 +43,7 @@ func (T *Encoder) ReadFrom(r *Decoder) (int, error) {
 	for {
 		if T.bufferPos >= len(T.buffer) {
 			if err := T.Flush(); err != nil {
+				T.packetPos += n
 				return n, err
 			}
 		}
@@ -53,9 +54,11 @@ func (T *Encoder) ReadFrom(r *Decoder) (int, error) {
 			break
 		}
 		if err != nil {
+			T.packetPos += n
 			return n, err
 		}
 	}
+	T.packetPos += n
 	return n, nil
 }
 
diff --git a/lib/fed/packet.go b/lib/fed/packet.go
index 47e23949..eabc415e 100644
--- a/lib/fed/packet.go
+++ b/lib/fed/packet.go
@@ -26,13 +26,11 @@ func (T PendingPacket) Length() int {
 }
 
 func (T PendingPacket) WriteTo(encoder *Encoder) error {
-	count := T.Decoder.Length() - T.Decoder.Position()
 	for T.Decoder.Position() < T.Decoder.Length() {
 		if _, err := encoder.ReadFrom(T.Decoder); err != nil {
 			return err
 		}
 	}
-	encoder.packetPos += count
 	return nil
 }
 
-- 
GitLab