@@ -179,22 +179,37 @@ func generateTreeState(change *wcModel.Change, markdown bool) string {
179
179
if change .Breaking {
180
180
breaking = "❌ "
181
181
}
182
+
183
+ // Helper function to safely dereference int pointers
184
+ safeDeref := func (ptr * int ) int {
185
+ if ptr == nil {
186
+ return 0
187
+ }
188
+ return * ptr
189
+ }
190
+
182
191
switch change .ChangeType {
183
192
case wcModel .Modified :
184
193
if markdown {
185
- return fmt .Sprintf ("[🔀] %s (%d:%d)%s" , change .Property , * change .Context .NewLine , * change .Context .NewColumn , breaking )
194
+ return fmt .Sprintf ("[🔀] %s (%d:%d)%s" , change .Property ,
195
+ safeDeref (change .Context .NewLine ), safeDeref (change .Context .NewColumn ), breaking )
186
196
}
187
- return fmt .Sprintf ("[M] %s (%d:%d)%s" , change .Property , * change .Context .NewLine , * change .Context .NewColumn , breaking )
197
+ return fmt .Sprintf ("[M] %s (%d:%d)%s" , change .Property ,
198
+ safeDeref (change .Context .NewLine ), safeDeref (change .Context .NewColumn ), breaking )
188
199
case wcModel .ObjectAdded , wcModel .PropertyAdded :
189
200
if markdown {
190
- return fmt .Sprintf ("[➕] %s (%d:%d)%s" , change .Property , * change .Context .NewLine , * change .Context .NewColumn , breaking )
201
+ return fmt .Sprintf ("[➕] %s (%d:%d)%s" , change .Property ,
202
+ safeDeref (change .Context .NewLine ), safeDeref (change .Context .NewColumn ), breaking )
191
203
}
192
- return fmt .Sprintf ("[+] %s (%d:%d)%s" , change .Property , * change .Context .NewLine , * change .Context .NewColumn , breaking )
204
+ return fmt .Sprintf ("[+] %s (%d:%d)%s" , change .Property ,
205
+ safeDeref (change .Context .NewLine ), safeDeref (change .Context .NewColumn ), breaking )
193
206
case wcModel .ObjectRemoved , wcModel .PropertyRemoved :
194
207
if markdown {
195
- return fmt .Sprintf ("[➖] %s (%d:%d)%s" , change .Property , * change .Context .OriginalLine , * change .Context .OriginalColumn , breaking )
208
+ return fmt .Sprintf ("[➖] %s (%d:%d)%s" , change .Property ,
209
+ safeDeref (change .Context .OriginalLine ), safeDeref (change .Context .OriginalColumn ), breaking )
196
210
}
197
- return fmt .Sprintf ("[-] %s (%d:%d)%s" , change .Property , * change .Context .OriginalLine , * change .Context .OriginalColumn , breaking )
211
+ return fmt .Sprintf ("[-] %s (%d:%d)%s" , change .Property ,
212
+ safeDeref (change .Context .OriginalLine ), safeDeref (change .Context .OriginalColumn ), breaking )
198
213
}
199
214
return ""
200
215
}
0 commit comments