Migrated from https://git2.unturf.com/engineering/java-topology.git
BFS flood fill in server/generator/mapgen_utils.c uses tile_list_search() (O(N) linked-list scan) as visited check per adjacent tile. On a continent of T tiles, each tile's 4-8 neighbors each trigger a linear scan of our growing worklist, making total complexity O(T * adj * T) = O(T^2). Fix: set tile_continent() at enqueue time instead of dequeue time. Our continent field itself becomes our visited set, replacing O(N) membership checks with O(1) integer comparisons. Worklist is now a pure FIFO queue. Measured: 53x overhead at T=25,600 tiles (160x160 map). Standard large Freeciv maps have continents of 5,000-20,000+ tiles. MOAD 0002 (Intertangle): Freeciv uses struct civ_game as global god object, expected for a single-threaded C game from 1996. Not a practical defect. MOAD 0003 (Leaked Context): CLEAN. Thread-local only in bundled tinycthread dependency. Tex AI uses proper mutexes. MOAD 0004 (Logged Secret): CLEAN. auth.c logs rejection messages with usernames only, never passwords or credentials. MOAD 0005 (Thundering Herd): CLEAN. AI settler cache uses hash lookup, single-threaded game loop has no concurrent cache races. |
||
|---|---|---|
| .github | ||
| .jcheck | ||
| bin | ||
| defects | ||
| doc | ||
| docs | ||
| make | ||
| scanner | ||
| src | ||
| test | ||
| tests | ||
| tools | ||
| whitepaper | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| ADDITIONAL_LICENSE_INFO | ||
| ASSEMBLY_EXCEPTION | ||
| CLAUDE.md | ||
| compile-unit-tests.sh | ||
| configure | ||
| CONTRIBUTING.md | ||
| GNUmakefile | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| SECURITY.md | ||
| UNDF-REGISTRY.json | ||
Welcome to the JDK!
For build instructions please see the online documentation, or either of these files:
- doc/building.html (html version)
- doc/building.md (markdown version)
See https://openjdk.org/ for more information about the OpenJDK Community and the JDK and see https://bugs.openjdk.org for JDK issue tracking.