#512225 python-opengl: importing OpenGL.GLU fails

#512225#5
Date:
2009-01-18 18:57:29 UTC
From:
To:
Attached is console log from ipython session.

I believe this is because line 192 of baseplatform.py:
   extension = original.argNames,
should actually be
   extension = original.extension,

Making this change appears to fix the problem.


In [20]: from OpenGL.GLU import *
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)

/home/jk/newflesh/pyggy/<ipython console> in <module>()

/usr/lib/python2.5/site-packages/OpenGL/GLU/__init__.py in <module>()
      8 from OpenGL.GLU.projection import *
      9 from OpenGL.GLU.tess import *
---> 10 from OpenGL.GLU.glunurbs import *
     11 import ctypes
     12

/usr/lib/python2.5/site-packages/OpenGL/GLU/glunurbs.py in <module>()
    145
    146 for (c,funcType) in GLUnurbs.CALLBACK_TYPES.items():
--> 147         cb = _callbackWithType( funcType )
    148         GLUnurbs.CALLBACK_FUNCTION_REGISTRARS[ c ] = cb
    149         assert funcType == GLUnurbs.CALLBACK_TYPES[c]

/usr/lib/python2.5/site-packages/OpenGL/GLU/glunurbs.py in _callbackWithType(funcType)
    138         """Get gluNurbsCallback function with set last arg-type"""
    139 	result =  platform.copyBaseFunction(
--> 140                 simple.gluNurbsCallback
    141 	)
    142         result.argtypes = [ctypes.POINTER(GLUnurbs), simple.GLenum, funcType]

/usr/lib/python2.5/site-packages/OpenGL/platform/baseplatform.py in copyBaseFunction(self, original)
    190                         resultType=original.restype, argTypes=original.argtypes,
    191                         doc = original.__doc__, argNames = original.argNames,
--> 192                         extension = original.argNames,
    193 		)
    194 	def nullFunction(

/usr/lib/python2.5/site-packages/OpenGL/platform/baseplatform.py in createBaseFunction(self, functionName, dll, resultType, argTypes, doc, argNames, extension)
    132                                 resultType=resultType, argTypes=argTypes,
    133                                 doc = doc, argNames = argNames,
--> 134                                 extension = extension,
    135 			)
    136                 except AttributeError, err:

/usr/lib/python2.5/site-packages/OpenGL/platform/baseplatform.py in constructFunction(self, functionName, dll, resultType, argTypes, doc, argNames, extension)
     78                 raises AttributeError if can't find the procedure...
     79 		"""
---> 80                 if extension and not self.checkExtension( extension ):
     81                         raise AttributeError( """Extension not available""" )
     82                 if extension and not self.EXTENSIONS_USE_BASE_FUNCTIONS:

/usr/lib/python2.5/site-packages/OpenGL/platform/baseplatform.py in checkExtension(self, name)
    156                                         GL_EXTENSIONS, set, context=context, weak=False
    157 				)
--> 158                         current = set.get( name )
    159                         if current is None:
    160                                 from OpenGL import extensions

TypeError: list objects are unhashable

#512225#10
Date:
2009-03-09 17:09:33 UTC
From:
To:
Hi,

I've just tried this out and failed to reproduce it, although it might
be connected to some GL extension not being present on my system.

Does this problem still persist with the latest Mesa GL?


best,


Torsten