• Join/Login
  • Business Software
  • Open Source Software
  • For Vendors
  • Blog
  • About
  • More
    • Articles
    • Create
    • SourceForge Podcast
    • Site Documentation
    • Subscribe to our Newsletter
    • Support Request
SourceForge logo
For Vendors Help Create Join Login
SourceForge logo
Business Software
Open Source Software
SourceForge Podcast
Resources
  • Articles
  • Case Studies
  • Blog
Menu
  • Help
  • Create
  • Join
  • Login
  • Home
  • Browse
  • FMSLogo
  • Code
FMSLogo

FMSLogo Code

A Logo programming environment for Microsoft Windows

Brought to you by: david_costanzo
  • Summary
  • Files
  • Reviews
  • Support
  • Tickets ▾
    • Feature Requests
    • Bugs
    • Support Requests
  • Discussion
  • Code
Menu ▾ ▴
 
  • Browse Commits
  • Browse Files

Code Commit Log


Commit Date  
[r6325] by david_costanzo

Add EVALTEST.ERASEWHILERUNNING.
This is a focused test for a specific clause in a if statement in eval.cpp.

2026-07-03 18:14:26 Tree
[r6324] by david_costanzo

Cleanup: Stop calling untreeify_procnode() in release_all_objects()
This is no longer needed, now that treeifying a procnode no longer creates circular references.

2026-07-03 03:28:39 Tree
[r6323] by david_costanzo

Fix Bug #620; APPLY no longer leaks when running named slot templates.

The fix is not to make LINE nodes when treeifying a procedure.
In the context of a treeified procedure, LINE nodes would create a cycle
that would leak memory unless the procedure is explicitly untreeified.

In the case where APPLY was given named slot templates (a body list),
APPLY creates an anoymous procedure and there's no good place in the
evaluator to untreeify it. In this case, some nodes were leaked.

This was a regression introduced by r1570, when an untreeify_line
was removed from the logic for treeifying a proceedure, following what
UCBLogo does. However, UCBLogo doesn't leak nodes because
it has a mark-and-sweep garbage collector that can handle cycles.

The new fix doesn't re-add the explicit untreeification. Instead, it
extracts a helper function from untreeify_line() that doesn't mark the
line as a TREE or create the cycle. To me, it makes more sense not to
create the cycle than to create a cycle then immediately undo that work.

2026-07-03 02:57:27 Tree
[r6322] by david_costanzo

Include the reference count of nodes in debug_dump_node.
This helps to debug some memory leaks and freed memory reads/writes.

2026-07-03 01:51:20 Tree
[r6321] by david_costanzo

Replace a NIL with nullptr for something that isn't a NODE*.
nullptr is more correct, since NIL is only supposed to be for a NODE *.

2026-07-02 02:17:35 Tree
[r6320] by david_costanzo

Fix build breaks when USE_PRECOMPILED_HEADER is not defined.

2026-07-02 01:21:46 Tree
[r6319] by david_costanzo

Mark the build as non-official

2026-07-02 01:03:06 Tree
[r6318] by david_costanzo

Remove settree__tree().
This had an unstated side effect of setting the treepair's generation.
Worse, the generation had to be immediately modified by all callers, which convinced me that it'd would be better for the callers to construct the treepair.

2026-07-02 00:48:38 Tree
[r6317] by david_costanzo

Cleanup: Remove unneeded local variable "s" in cnv_node_to_numnode.

2026-06-30 23:01:43 Tree
[r6316] by david_costanzo

Cleanup: Remove logic to skip over the leading + in cnv_node_to_numnode.
This was dead code because numberp() doesn't allow numbers to begin with a +.

2026-06-30 22:59:04 Tree
Older >
SourceForge
  • Create a Project
  • Open Source Software
  • Business Software
  • Top Downloaded Projects
Company
  • About
  • Team
  • SourceForge Headquarters
    1320 Columbia Street Suite 310
    San Diego, CA 92101
    +1 (858) 422-6466
Resources
  • Support
  • Site Documentation
  • Site Status
  • SourceForge Reviews
SourceForge logo
© 2026 Slashdot Media. All Rights Reserved.
Terms Privacy Opt Out Advertise

Cerberus Logo