VirtualBox

14 年 前 建立

13 年 前 結束

#8916 closed defect (fixed)

glGetString(GL_VERSION) must not depend on locale -> Fixed in SVN

回報者: Loïc Yhuel 負責人:
元件: 3D support 版本: VirtualBox 4.0.8
關鍵字: 副本:
Guest type: Linux Host type: other

描述

With LANG=fr_FR, glGetString(GL_VERSION) returns "2,0 Chromium 1.9" instead of "2.1 Chromium 1.9"
It's not visible with glxinfo since there is no setlocale call, but it makes gnome-shell segfault on start : clutter uses a NULL pointer when trying to call glBlendEquation (it only sets the pointer if it detects OpenGL >= 1.2, and it doesn't support the comma so detected version is 0.0).

In src/VBox/Additions/common/crOpenGL/pack/packspu_getstring.c :

  • in packspu_GetString, using sprintf with "%.1f Chromium %s" depends on the language
  • in GetVersionString, usage of crStrToFloat is probably wrong since the string uses '.' (I did not test, but I suppose "2.1" is converted to 2.0f here)

In src/VBox/GuestHost/OpenGL/state_tracker/state_limits.c :

  • in crStateComputeVersion, same thing as above, CR_OPENGL_VERSION_STRING is "2.1", which doesn't work with crStrToFloat(atof) for all languages

更動歷史 (1)

comment:1 13 年 前Leonid Lobachev 編輯

摘要: glGetString(GL_VERSION) must not depend on localeglGetString(GL_VERSION) must not depend on locale -> Fixed in SVN
狀態: newclosed
處理結果: fixed

Fixed in SVN, thank you for report.

注意: 瀏覽 TracTickets 來幫助您使用待辦事項功能

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette