api.spaceplanner.app

Spaceplanner API
git clone git://jacobedwards.org/api.spaceplanner.app
Log | Files | Refs

commit 779e748fa09912152011ac694499f1ad65f15bda
parent 8a780bef866d683ef1845cbdb7140165aedf587e
Author: Jacob R. Edwards <jacob@jacobedwards.org>
Date:   Mon, 26 Aug 2024 14:16:56 -0700

Check for nil in patchPoint and patchPointmap

This fixes the nil dereference bug on deletions.

Diffstat:
Minternal/backend/floorplan_data.go | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/internal/backend/floorplan_data.go b/internal/backend/floorplan_data.go @@ -193,13 +193,17 @@ func (e *Env) PatchFloorplanData(tx *sql.Tx, user string, floorplan string, patc if err != nil { return data, ref.Error("", err) } - data.Points[point.id] = *point + if point != nil { + data.Points[point.id] = *point + } } else if (ref.table == "pointmaps") { pointmap, err := e.patchPointMap(tx, user, floorplan, &patch, &ref, new_pointmap_ids, new_point_ids) if err != nil { return data, ref.Error("", err) } - data.Pointmaps[pointmap.id] = *pointmap + if pointmap != nil { + data.Pointmaps[pointmap.id] = *pointmap + } } else { return data, ref.Error("Path does not exist", nil) }