diff --git a/Lib/fontParts/base/bPoint.py b/Lib/fontParts/base/bPoint.py
index <HASH>..<HASH> 100644
--- a/Lib/fontParts/base/bPoint.py
+++ b/Lib/fontParts/base/bPoint.py
@@ -223,6 +223,7 @@ class BaseBPoint(BaseObject, TransformationMixin):
                     offCurves[-1].y = y
             elif value != (0, 0):
                 segment.type = "curve"
+                offCurves = segment.offCurve
                 offCurves[-1].x = x
                 offCurves[-1].y = y
 
@@ -284,6 +285,7 @@ class BaseBPoint(BaseObject, TransformationMixin):
                     offCurves[0].y = y
             elif value != (0, 0):
                 nextSegment.type = "curve"
+                offCurves = segment.offCurve
                 offCurves[0].x = x
                 offCurves[0].y = y
offCurve need to be called again

the temp list offCurves is not going to fill itself with points after
setting the segment.type to curve, so call it again to retrieve the off
curves and then change the x, y values