fix #1017551: don't crash on manipulating active menus
This commit is contained in:
parent
b05718542c
commit
acaa392c7a
85
freeglut-2.8.1-nocheck.patch
Normal file
85
freeglut-2.8.1-nocheck.patch
Normal file
@ -0,0 +1,85 @@
|
||||
diff -up freeglut-2.8.1/src/freeglut_menu.c.nocheck freeglut-2.8.1/src/freeglut_menu.c
|
||||
--- freeglut-2.8.1/src/freeglut_menu.c.nocheck 2014-01-23 14:43:19.386742857 +0100
|
||||
+++ freeglut-2.8.1/src/freeglut_menu.c 2014-01-23 14:44:26.322770844 +0100
|
||||
@@ -866,8 +866,6 @@ int FGAPIENTRY glutCreateMenu( void(* ca
|
||||
{
|
||||
/* The menu object creation code resides in freeglut_structure.c */
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCreateMenu" );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
return fgCreateMenu( callback )->ID;
|
||||
}
|
||||
|
||||
@@ -891,9 +889,6 @@ void FGAPIENTRY glutDestroyMenu( int men
|
||||
|
||||
freeglut_return_if_fail( menu );
|
||||
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
-
|
||||
/* The menu object destruction code resides in freeglut_structure.c */
|
||||
fgDestroyMenu( menu );
|
||||
}
|
||||
@@ -936,8 +931,6 @@ void FGAPIENTRY glutAddMenuEntry( const
|
||||
menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
menuEntry->Text = strdup( label );
|
||||
menuEntry->ID = value;
|
||||
@@ -961,8 +954,6 @@ void FGAPIENTRY glutAddSubMenu( const ch
|
||||
subMenu = fgMenuByID( subMenuID );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
freeglut_return_if_fail( subMenu );
|
||||
|
||||
@@ -984,8 +975,6 @@ void FGAPIENTRY glutChangeToMenuEntry( i
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutChangeToMenuEntry" );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
/* Get n-th menu entry in the current menu, starting from one: */
|
||||
menuEntry = fghFindMenuEntry( fgStructure.CurrentMenu, item );
|
||||
@@ -1014,8 +1003,6 @@ void FGAPIENTRY glutChangeToSubMenu( int
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutChangeToSubMenu" );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
/* Get handle to sub menu */
|
||||
subMenu = fgMenuByID( subMenuID );
|
||||
@@ -1048,8 +1035,6 @@ void FGAPIENTRY glutRemoveMenuItem( int
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutRemoveMenuItem" );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
/* Get n-th menu entry in the current menu, starting from one: */
|
||||
menuEntry = fghFindMenuEntry( fgStructure.CurrentMenu, item );
|
||||
@@ -1074,8 +1059,6 @@ void FGAPIENTRY glutAttachMenu( int butt
|
||||
freeglut_return_if_fail( fgStructure.CurrentWindow );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
freeglut_return_if_fail( button >= 0 );
|
||||
freeglut_return_if_fail( button < FREEGLUT_MAX_MENUS );
|
||||
@@ -1093,8 +1076,6 @@ void FGAPIENTRY glutDetachMenu( int butt
|
||||
freeglut_return_if_fail( fgStructure.CurrentWindow );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
- if (fgGetActiveMenu())
|
||||
- fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
freeglut_return_if_fail( button >= 0 );
|
||||
freeglut_return_if_fail( button < FREEGLUT_MAX_MENUS );
|
@ -1,7 +1,7 @@
|
||||
Summary: A freely licensed alternative to the GLUT library
|
||||
Name: freeglut
|
||||
Version: 2.8.1
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
URL: http://freeglut.sourceforge.net
|
||||
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
|
||||
# For the manpages
|
||||
@ -18,6 +18,8 @@ BuildRequires: libXi-devel libICE-devel
|
||||
# freeglut. Note: This package will NOT co-exist with the glut package.
|
||||
Provides: glut = 3.7
|
||||
Obsoletes: glut < 3.7
|
||||
# #1017551: Don't check whether a menu is active while manipulating it
|
||||
Patch0: freeglut-2.8.1-nocheck.patch
|
||||
|
||||
%description
|
||||
freeglut is a completely open source alternative to the OpenGL Utility Toolkit
|
||||
@ -48,6 +50,7 @@ license.
|
||||
|
||||
%prep
|
||||
%setup -q -a 1
|
||||
%patch0 -p1 -b .nocheck
|
||||
|
||||
%build
|
||||
# --disable-warnings -> don't add -Werror to CFLAGS
|
||||
@ -81,6 +84,9 @@ install -p -m 644 doc/man/*.3 $RPM_BUILD_ROOT/%{_mandir}/man3
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Jan 23 2014 Tomas Smetana <tsmetana@redhat.com> - 2.8.1-3
|
||||
- fix #1017551: don't crash on manipulating active menus
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.8.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user