mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-17 00:00:40 +00:00
27 lines
957 B
Plaintext
27 lines
957 B
Plaintext
|
# hidden3d-endlessloop
|
||
|
--- hidden3d.c.ORIG Thu Aug 19 15:39:28 1999
|
||
|
+++ hidden3d.c Wed Nov 17 17:42:00 1999
|
||
|
@@ -2140,14 +2140,20 @@
|
||
|
test->tested = is_moved_or_split;
|
||
|
SPLIT_TEST_BY_P;
|
||
|
} else {
|
||
|
- if (loop && (p->tested == is_tested)) {
|
||
|
- /* Ouch, seems like we're in trouble, really */
|
||
|
+ if (loop && (p->tested == is_in_loop)) {
|
||
|
+ /* Ouch, seems like we're in trouble, really: no way to
|
||
|
+ * split one of them, and we're in a loop, so we can't
|
||
|
+ * move p to the front of the list, without risking an
|
||
|
+ * endless loop. Well, let's just output the darn thing,
|
||
|
+ * then, no matter what. :-( */
|
||
|
+#if DEBUG /* normally off */
|
||
|
fprintf(stderr, "\
|
||
|
#Failed: In loop, without intersections.\n\
|
||
|
#Relations are %d, %d\n",
|
||
|
p_rel_tplane, t_rel_pplane);
|
||
|
print_polygon(test, "test");
|
||
|
print_polygon(p, "p");
|
||
|
+#endif
|
||
|
continue; /* Keep quiet, maybe no-one will notice (;-) */
|
||
|
} else {
|
||
|
PUT_P_IN_FRONT_TEST(is_in_loop);
|