qbektrix / pyglet

Automatically exported from code.google.com/p/pyglet
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Re-using pyglet.Text.Label appears to leak memory #297

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Running the attached file, on Python 2.5. Eventually some of the text
appears to be rendered wrongly (out of video memory?) and the process's
working memory set continues to rise.

Output of tools/gl_info.py:

Platform instance is <pyglet.window.win32.Win32Platform object at 0x00D3F810>
Display instance is <pyglet.window.win32.Win32Display object at 0x00D3F7F0>
Screens:
  Win32Screen(x=0, y=0, width=1280, height=1024)
Creating default context...
GL attributes:
double_buffer=True stereo=False buffer_size=32 aux_buffers=4
sample_buffers=0 samples=0 red_size=8 green_size=8 blue_size=8
alpha_size=0 depth_size=24 stencil_size=0 accum_red_size=16
accum_green_size=16 accum_blue_size=16 accum_alpha_size=16
GL version: 2.0.3
GL vendor: NVIDIA Corporation
GL renderer: GeForce 7600 GT/PCI/SSE2/3DNOW!
GL extensions:
  GL_ARB_texture_compression GL_NV_point_sprite
  GL_NV_fragment_program_option GL_NV_vertex_array_range2
  GL_EXT_blend_color GL_EXT_blend_subtract GL_EXT_stencil_wrap
  GL_NV_fence GL_EXT_vertex_array GL_IBM_texture_mirrored_repeat
  GL_EXT_texture_compression_s3tc GL_NV_vertex_program2_option
  GL_ARB_depth_texture GL_NV_packed_depth_stencil GL_EXT_Cg_shader
  GL_NV_primitive_restart GL_EXT_texture_object
  GL_NVX_conditional_render GL_NV_texture_compression_vtc
  GL_NV_texture_shader3 GL_NV_texture_shader2 GL_EXT_blend_func_separate
  GL_EXT_texture_cube_map GL_ARB_occlusion_query GL_ARB_transpose_matrix
  GL_ARB_texture_border_clamp GL_EXT_fog_coord GL_NV_depth_clamp
  GL_ARB_texture_cube_map GL_EXT_blend_equation_separate
  GL_ARB_point_parameters GL_EXT_texture_env_dot3
  GL_EXT_multi_draw_arrays GL_EXT_texture_env_combine
  GL_EXT_texture_env_add GL_ARB_vertex_program GL_ARB_texture_env_dot3
  GL_EXT_bgra GL_NV_float_buffer GL_NV_texture_env_combine4
  GL_ARB_texture_env_combine GL_ARB_vertex_buffer_object
  GL_EXT_shadow_funcs GL_NV_vertex_array_range
  GL_NV_texture_expand_normal GL_EXT_separate_specular_color
  GL_NV_fog_distance GL_EXT_packed_depth_stencil
  GL_EXT_texture_mirror_clamp GL_EXT_timer_query
  GL_NV_multisample_filter_hint GL_SUN_slice_accum GL_ARB_point_sprite
  GL_EXT_framebuffer_object GL_ARB_vertex_shader GL_ARB_half_float_pixel
  GL_KTX_buffer_region GL_NV_register_combiners GL_ARB_draw_buffers
  GL_ARB_fragment_program_shadow GL_NV_half_float GL_NV_fragment_program
  GL_ATI_texture_mirror_once GL_IBM_rasterpos_clip GL_EXT_texture_sRGB
  GL_EXT_stencil_two_side GL_SGIX_shadow GL_NV_texgen_reflection
  GL_EXT_compiled_vertex_array GL_NV_fragment_program2
  GL_EXT_point_parameters GL_WIN_swap_hint GL_ARB_texture_float
  GL_ARB_fragment_shader GL_ATI_texture_float GL_NV_texture_shader
  GL_NV_pixel_data_range GL_ARB_imaging GL_ARB_fragment_program
  GL_ARB_shader_objects GL_ARB_shading_language_100 GL_NV_blend_square
  GL_EXT_secondary_color GL_ARB_texture_non_power_of_two
  GL_EXT_texture_lod_bias GL_NV_texture_rectangle
  GL_EXT_pixel_buffer_object GL_EXT_abgr GL_NV_vertex_program
  GL_ARB_texture_rectangle GL_ARB_multisample GL_SGIS_generate_mipmap
  GL_EXT_texture_filter_anisotropic GL_NV_light_max_exponent
  GL_EXT_blend_minmax GL_SGIS_texture_lod GL_NV_vertex_program3
  GL_NV_vertex_program2 WGL_EXT_swap_control GL_SGIX_depth_texture
  GL_ARB_color_buffer_float GL_EXT_texture_edge_clamp GL_ARB_window_pos
  GL_ARB_shadow GL_ARB_texture_mirrored_repeat GL_EXT_texture_lod
  GL_S3_s3tc GL_NV_vertex_program1_1 GL_EXT_texture3D
  GL_ARB_multitexture GL_NV_copy_depth_to_color GL_ATI_draw_buffers
  GL_EXT_depth_bounds_test GL_EXT_draw_range_elements
  GL_NV_occlusion_query GL_ARB_texture_env_add GL_EXT_packed_pixels
  GL_EXT_rescale_normal GL_ARB_pixel_buffer_object
  GL_NV_register_combiners2
GLU version: 1.2.2.0 Microsoft Corporation
GLU extensions:
  GL_EXT_bgra

Context is Win32Context()
WGL extensions:
 WGL_ARB_buffer_region WGL_ARB_extensions_string
 WGL_ARB_make_current_read WGL_ARB_multisample WGL_ARB_pbuffer
 WGL_ARB_pixel_format WGL_ARB_render_texture WGL_ATI_pixel_format_float
 WGL_EXT_extensions_string WGL_EXT_swap_control WGL_NV_float_buffer
 WGL_NV_render_depth_texture WGL_NV_render_texture_rectangle

Original issue reported on code.google.com by kylo...@gmail.com on 26 May 2008 at 12:07

Attachments:

GoogleCodeExporter commented 9 years ago
Cannot reproduce.  Please make sure you are using SVN head, and post the output 
of
`python -m pyglet.info`.

Original comment by Alex.Hol...@gmail.com on 26 May 2008 at 12:52

GoogleCodeExporter commented 9 years ago
I'm afraid I'm not going to go to the trouble of installing an SVN client just 
to
test a bug, sorry. If you think it's been fixed since the beta, then fair 
enough. You
can have the output of 'python -m pyglet.info' if it's any use, though.

Python
------------------------------------------------------------------------------
sys.version: 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel
)]
sys.platform: win32
os.getcwd(): C:\Documents and Settings\User

pyglet
------------------------------------------------------------------------------
pyglet.version: 1.1beta1
pyglet.__file__: e:\code\Python25\lib\site-packages\pyglet\__init__.pyc
pyglet.options['debug_trace_depth'] = 1
pyglet.options['audio'] = ('directsound', 'openal', 'alsa', 'silent')
pyglet.options['xsync'] = True
pyglet.options['shadow_window'] = True
pyglet.options['debug_win32'] = False
pyglet.options['debug_gl_trace'] = False
pyglet.options['debug_x11'] = False
pyglet.options['debug_font'] = False
pyglet.options['debug_media'] = False
pyglet.options['debug_trace'] = False
pyglet.options['debug_lib'] = False
pyglet.options['graphics_vbo'] = True
pyglet.options['vsync'] = None
pyglet.options['debug_trace_args'] = False
pyglet.options['debug_gl'] = True
pyglet.options['debug_graphics_batch'] = False
pyglet.options['font'] = ('gdiplus', 'win32')
pyglet.options['debug_gl_trace_args'] = False

pyglet.window
------------------------------------------------------------------------------
platform: <pyglet.window.win32.Win32Platform object at 0x00D47F50>
display: <pyglet.window.win32.Win32Display object at 0x00D47F30>
screens[0]: Win32Screen(x=0, y=0, width=1280, height=1024)
config['double_buffer'] = True
config['stereo'] = False
config['buffer_size'] = 32
config['aux_buffers'] = 4
config['sample_buffers'] = 0
config['samples'] = 0
config['red_size'] = 8
config['green_size'] = 8
config['blue_size'] = 8
config['alpha_size'] = 0
config['depth_size'] = 24
config['stencil_size'] = 0
config['accum_red_size'] = 16
config['accum_green_size'] = 16
config['accum_blue_size'] = 16
config['accum_alpha_size'] = 16
context: Win32Context()

pyglet.gl.gl_info
------------------------------------------------------------------------------
gl_info.get_version(): 2.0.3
gl_info.get_vendor(): NVIDIA Corporation
gl_info.get_renderer(): GeForce 7600 GT/PCI/SSE2/3DNOW!
gl_info.get_extensions():
   GL_ARB_color_buffer_float
   GL_ARB_depth_texture
   GL_ARB_draw_buffers
   GL_ARB_fragment_program
   GL_ARB_fragment_program_shadow
   GL_ARB_fragment_shader
   GL_ARB_half_float_pixel
   GL_ARB_imaging
   GL_ARB_multisample
   GL_ARB_multitexture
   GL_ARB_occlusion_query
   GL_ARB_pixel_buffer_object
   GL_ARB_point_parameters
   GL_ARB_point_sprite
   GL_ARB_shader_objects
   GL_ARB_shading_language_100
   GL_ARB_shadow
   GL_ARB_texture_border_clamp
   GL_ARB_texture_compression
   GL_ARB_texture_cube_map
   GL_ARB_texture_env_add
   GL_ARB_texture_env_combine
   GL_ARB_texture_env_dot3
   GL_ARB_texture_float
   GL_ARB_texture_mirrored_repeat
   GL_ARB_texture_non_power_of_two
   GL_ARB_texture_rectangle
   GL_ARB_transpose_matrix
   GL_ARB_vertex_buffer_object
   GL_ARB_vertex_program
   GL_ARB_vertex_shader
   GL_ARB_window_pos
   GL_ATI_draw_buffers
   GL_ATI_texture_float
   GL_ATI_texture_mirror_once
   GL_EXT_Cg_shader
   GL_EXT_abgr
   GL_EXT_bgra
   GL_EXT_blend_color
   GL_EXT_blend_equation_separate
   GL_EXT_blend_func_separate
   GL_EXT_blend_minmax
   GL_EXT_blend_subtract
   GL_EXT_compiled_vertex_array
   GL_EXT_depth_bounds_test
   GL_EXT_draw_range_elements
   GL_EXT_fog_coord
   GL_EXT_framebuffer_object
   GL_EXT_multi_draw_arrays
   GL_EXT_packed_depth_stencil
   GL_EXT_packed_pixels
   GL_EXT_pixel_buffer_object
   GL_EXT_point_parameters
   GL_EXT_rescale_normal
   GL_EXT_secondary_color
   GL_EXT_separate_specular_color
   GL_EXT_shadow_funcs
   GL_EXT_stencil_two_side
   GL_EXT_stencil_wrap
   GL_EXT_texture3D
   GL_EXT_texture_compression_s3tc
   GL_EXT_texture_cube_map
   GL_EXT_texture_edge_clamp
   GL_EXT_texture_env_add
   GL_EXT_texture_env_combine
   GL_EXT_texture_env_dot3
   GL_EXT_texture_filter_anisotropic
   GL_EXT_texture_lod
   GL_EXT_texture_lod_bias
   GL_EXT_texture_mirror_clamp
   GL_EXT_texture_object
   GL_EXT_texture_sRGB
   GL_EXT_timer_query
   GL_EXT_vertex_array
   GL_IBM_rasterpos_clip
   GL_IBM_texture_mirrored_repeat
   GL_KTX_buffer_region
   GL_NVX_conditional_render
   GL_NV_blend_square
   GL_NV_copy_depth_to_color
   GL_NV_depth_clamp
   GL_NV_fence
   GL_NV_float_buffer
   GL_NV_fog_distance
   GL_NV_fragment_program
   GL_NV_fragment_program2
   GL_NV_fragment_program_option
   GL_NV_half_float
   GL_NV_light_max_exponent
   GL_NV_multisample_filter_hint
   GL_NV_occlusion_query
   GL_NV_packed_depth_stencil
   GL_NV_pixel_data_range
   GL_NV_point_sprite
   GL_NV_primitive_restart
   GL_NV_register_combiners
   GL_NV_register_combiners2
   GL_NV_texgen_reflection
   GL_NV_texture_compression_vtc
   GL_NV_texture_env_combine4
   GL_NV_texture_expand_normal
   GL_NV_texture_rectangle
   GL_NV_texture_shader
   GL_NV_texture_shader2
   GL_NV_texture_shader3
   GL_NV_vertex_array_range
   GL_NV_vertex_array_range2
   GL_NV_vertex_program
   GL_NV_vertex_program1_1
   GL_NV_vertex_program2
   GL_NV_vertex_program2_option
   GL_NV_vertex_program3
   GL_S3_s3tc
   GL_SGIS_generate_mipmap
   GL_SGIS_texture_lod
   GL_SGIX_depth_texture
   GL_SGIX_shadow
   GL_SUN_slice_accum
   GL_WIN_swap_hint
   WGL_EXT_swap_control

pyglet.gl.glu_info
------------------------------------------------------------------------------
glu_info.get_version(): 1.2.2.0 Microsoft Corporation
glu_info.get_extensions():
   GL_EXT_bgra

pyglet.gl.glx_info
------------------------------------------------------------------------------
GLX not available.

pyglet.media
------------------------------------------------------------------------------
driver: pyglet.media.drivers.directsound

pyglet.media.avbin
------------------------------------------------------------------------------
Library: <CDLL 'avbin', handle 2bd0000 at ff05d0>
AVbin version: 3
FFmpeg revision: 12795

pyglet.media.drivers.openal
------------------------------------------------------------------------------
Library: <CDLL 'openal32', handle 2fc0000 at ff0d70>
Version: (1, 1)
Extensions:
OpenAL not available.

Original comment by kylo...@gmail.com on 26 May 2008 at 10:28

GoogleCodeExporter commented 9 years ago

Original comment by Alex.Hol...@gmail.com on 27 May 2008 at 12:46