Page MenuHome

Crash when activating 'International Fonts' in User Preferences
Closed, ResolvedPublic

Description

Hi,

When I try to activate 'International Fonts' in User Preferences, Blender crashes.

My OS Win 7 64 bit, Blender rev. 51535 64 bit

In Ubuntu I have no crash so I assume it's only Windows related.

Event Timeline

Fixed in svn rev51552. Thanks for the report, closing.

Blender still crashes on Linux...

Backtrace:

(gdb) run --factory-startup
Starting program: /home/irie/build/blender2.6/cmake/bin/blender --factory-startup
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Traceback (most recent call last):
File "/usr/lib/debug/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17-gdb.py", line 62, in <module>
from libstdcxx.v6.printers import register_libstdcxx_printers
ImportError: No module named libstdcxx.v6.printers
[New Thread 0x7fffea278700 (LWP 810)]
[New Thread 0x7fffe9a77700 (LWP 811)]
[New Thread 0x7fffe9276700 (LWP 812)]
[New Thread 0x7fffe8a75700 (LWP 813)]
[New Thread 0x7fffe8274700 (LWP 814)]
[New Thread 0x7fffe7a73700 (LWP 815)]
[New Thread 0x7fffe7272700 (LWP 816)]
[New Thread 0x7fffe6a71700 (LWP 817)]
connect failed: No such file or directory
ndof: spacenavd not found
[New Thread 0x7fffe6270700 (LWP 818)]
[Thread 0x7fffe6270700 (LWP 818) exited]
[New Thread 0x7fffe6270700 (LWP 819)]
[New Thread 0x7fffe1a6e700 (LWP 820)]
[New Thread 0x7fffe126d700 (LWP 821)]
[Thread 0x7fffe126d700 (LWP 821) exited]
found bundled python: /home/irie/build/blender2.6/cmake/bin/2.64/python

Program received signal SIGSEGV, Segmentation fault.
0x0000000002780c50 in BLF_lang_set (str=0x0) at /home/irie/Subversion/Blender/blender/source/blender/blenfont/intern/blf_lang.c:285
285 if (short_locale[0]) {
(gdb) backtrace full
#0 0x0000000002780c50 in BLF_lang_set (str=0x0) at /home/irie/Subversion/Blender/blender/source/blender/blenfont/intern/blf_lang.c:285
default_lang = "ja_JP.UTF-8", '\000' <repeats 52 times>
default_language = "ja\000en", '\000' <repeats 58 times>
locreturn = 0x617cc08 ""
short_locale = 0x214b434f <Address 0x214b434f out of bounds>
ok = 1
ulang = 0
#1 0x0000000002753bf5 in rna_userdef_language_update (UNUSED_bmain=0x4d5c9b8, UNUSED_scene=0x4d98b68, UNUSED_ptr=0x7fffffffdbf0) at /home/irie/Subversion/Blender/blender/source/blender/makesrna/intern/rna_userdef.c:96
No locals.
#2 0x0000000002647308 in rna_property_update (C=0x47f4c98, bmain=0x4d5c9b8, scene=0x4d98b68, ptr=0x7fffffffdbf0, prop=0x4442580 <rna_UserPreferencesSystem_use_international_fonts>) at /home/irie/Subversion/Blender/blender/source/blender/makesrna/intern/rna_access.c:1490
is_rna = 1
#3 0x00000000026473f0 in RNA_property_update (C=0x47f4c98, ptr=0x7fffffffdbf0, prop=0x4442580 <rna_UserPreferencesSystem_use_international_fonts>) at /home/irie/Subversion/Blender/blender/source/blender/makesrna/intern/rna_access.c:1514
No locals.
#4 0x00000000019d3a78 in ui_apply_but_funcs_after (C=0x47f4c98) at /home/irie/Subversion/Blender/blender/source/blender/editors/interface/interface_handlers.c:442
afterf = 0x4df5c18
after = {next = 0x0, prev = 0x0, func = 0x0, func_arg1 = 0x0, func_arg2 = 0x0, func_arg3 = 0x0, funcN = 0x0, func_argN = 0x0, rename_func = 0x0, rename_arg1 = 0x0, rename_orig = 0x0, handle_func = 0x0, handle_func_arg = 0x0, retval = 0, butm_func = 0x0, butm_func_arg = 0x0, a2 = 0, optype = 0x0, opcontext = 0, opptr = 0x0, rnapoin = {id = {data = 0x0}, type = 0x4447f40 <RNA_UserPreferencesSystem>, data = 0x47b9c80 <U>}, rnaprop = 0x4442580 <rna_UserPreferencesSystem_use_international_fonts>, context = 0x0, undostr = '\000' <repeats 63 times>, autokey = 0}
opptr = {id = {data = 0x7fffffffdff0}, type = 0x0, data = 0x0}
funcs = {first = 0x0, last = 0x0}
#5 0x00000000019e6823 in ui_handler_region (C=0x47f4c98, event=0x6209468, UNUSED_userdata=0x0) at /home/irie/Subversion/Blender/blender/source/blender/editors/interface/interface_handlers.c:6831
ar = 0x61860d8
but = 0x6733248
retval = 1
#6 0x000000000172b4b2 in wm_handler_ui_call (C=0x47f4c98, handler=0x6212368, event=0x6209468, always_pass=0) at /home/irie/Subversion/Blender/blender/source/blender/windowmanager/intern/wm_event_system.c:356
area = 0x6222b08
region = 0x61860d8
menu = 0x0
do_wheel_ui = 1
is_wheel = 0
retval = 0
#7 0x000000000172e9cf in wm_handlers_do (C=0x47f4c98, event=0x6209468, handlers=0x61861f0) at /home/irie/Subversion/Blender/blender/source/blender/windowmanager/intern/wm_event_system.c:1782
do_debug_handler = 0
wm = 0x4d5d118
handler = 0x6212368
nexthandler = 0x6197ad8
action = 0
always_pass = 0
__func__ = "wm_handlers_do"
#8 0x000000000172f8cf in wm_event_do_handlers (C=0x47f4c98) at /home/irie/Subversion/Blender/blender/source/blender/windowmanager/intern/wm_event_system.c:2136
sa = 0x6222b08
ar = 0x61860d8
doit = 0
action = 0
event = 0x6209468
wm = 0x4d5d118
win = 0x6188458
__func__ = "wm_event_do_handlers"
#9 0x0000000001726240 in WM_main (C=0x47f4c98) at /home/irie/Subversion/Blender/blender/source/blender/windowmanager/intern/wm.c:366
No locals.
#10 0x00000000017257ef in main (argc=2, argv=0x7fffffffdff8) at /home/irie/Subversion/Blender/blender/source/creator/creator.c:1394
C = 0x47f4c98
syshandle = 0x4801bb0
ba = 0x48454b8
(gdb)


r51552
Ubuntu 12.10 amd64

Did you run install target for cmake?

Anyway, would consider blender shouldn't crash with missing languages file.

Yeah, I removed all files in my build directory and run cmake, make, and make install.

Anyway, crash in case of missing languages file is fixed in r51555! Thanks for the report.

The crash actually has been fixed. Thanks.

However, I found that a "Language" menu below the "International Fonts" checkbox is empty. Something still seems broken...

Graou… reopening again… :/

Can you please confirm that you actually have a "languages" file under 2.64/datafiles/locale dir? If no, this is an build/install problem. If yes… I have no idea why Blender would not find it!

There is "language" file under locale directory. Hmm...

Ah, languages_path in fill_locales() takes an incorrect value "/home/irie/.config/blender/2.64/datafiles/locale/languages". The actual path is "/home/irie/build/blender2.6/cmake/bin/2.64/datafiles/locale/languages".

Yeah, suspected something like that… But this is not a bug of i18n code, then. And you won’t get any translation anyway (at least, not up to date ones), since path to mo's is determined the same way (BLI_get_folder(BLENDER_DATAFILES, "locale")).

Maybe /home/irie/.config/blender/2.64/datafiles/locale/languages is the path of the settings for your distrib blender package? But anyway, iirc, BLI_get_folder should always return dir local to current build first…

Yeah, ~/.config/blender/2.64 is a setting file directory for system-wide installation, and probably datafiles/locale has been created when I tested UI translation addon (but it has no "languages" file).

So I can see the menu items after deleting ~/.config/blender/2.64/datafiles/locale, but these disappear again if I use the translation addon. Is such behavior intentional?

Ok, so just mismatch between conf dirs… Think we can close this for good, this time! :)

Bastien Montagne (mont29) changed the task status from Unknown Status to Resolved.Oct 24 2012, 12:14 PM