diff options
author | thierry <thierry@FreeBSD.org> | 2004-04-10 05:21:12 +0800 |
---|---|---|
committer | thierry <thierry@FreeBSD.org> | 2004-04-10 05:21:12 +0800 |
commit | a0d1362697434b4fa2106d532d9a8dc58ac25f31 (patch) | |
tree | 28a82fdfe709b2fd8435b1861154746d8363d403 /lang | |
parent | 243c2dac783a767439b308228ad79d4a128029f8 (diff) | |
download | freebsd-ports-gnome-a0d1362697434b4fa2106d532d9a8dc58ac25f31.tar.gz freebsd-ports-gnome-a0d1362697434b4fa2106d532d9a8dc58ac25f31.tar.zst freebsd-ports-gnome-a0d1362697434b4fa2106d532d9a8dc58ac25f31.zip |
Fix an horrible bug in Gambas.
The 0.92 IDE corrupts tabstrips in forms when you save them! If you have a
tabstrip with three tabs, for example, then each tab will have the same
children controls as the first one! This is the reason why some people wrote
that the compiler said an unexpected '"Frame1" already defined' or something
similar.
Approved by: pav (mentor)
Obtained from: the author.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/gambas/Makefile | 1 | ||||
-rw-r--r-- | lang/gambas/files/patch-src::exec::gbx_exec_enum.c | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/lang/gambas/Makefile b/lang/gambas/Makefile index c604dd6f06a5..e0f72cbb6be9 100644 --- a/lang/gambas/Makefile +++ b/lang/gambas/Makefile @@ -6,6 +6,7 @@ PORTNAME= gambas PORTVERSION= 0.92 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= http://gambas.sourceforge.net/ diff --git a/lang/gambas/files/patch-src::exec::gbx_exec_enum.c b/lang/gambas/files/patch-src::exec::gbx_exec_enum.c new file mode 100644 index 000000000000..b0eaab26bae2 --- /dev/null +++ b/lang/gambas/files/patch-src::exec::gbx_exec_enum.c @@ -0,0 +1,22 @@ +--- ./src/exec/gbx_exec_enum.c.orig Fri Apr 9 21:33:05 2004 ++++ ./src/exec/gbx_exec_enum.c Fri Apr 9 21:33:33 2004 +@@ -41,8 +41,8 @@ + local = &BP[code & 0xFF]; + + EXEC_object(local, &class, &object, &defined); +- EXEC_enum_data = (void *)(local[1]._void.value); +- memset(EXEC_enum_data, 0, 8); ++ EXEC_enum_data = (void *)(&local[1]._void.ptype); ++ memset(EXEC_enum_data, 0, 12); + + EXEC_special(SPEC_FIRST, class, object, 0, TRUE); + } +@@ -58,7 +58,7 @@ + local = &BP[PC[-1] & 0xFF]; + + EXEC_object(local, &class, &object, &defined); +- EXEC_enum_data = (void *)(local[1]._void.value); ++ EXEC_enum_data = (void *)(&local[1]._void.ptype); + + EXEC_enum_stop = FALSE; + |