Closed WeSrc-Yin closed 4 years ago
附件怎么都上传不了,我贴一下我的xml:
`
<view x="10" y="70" w="-15" h="50" children_layout="default(r=1,c=3,s=8)">
<label x="0" y="middle" w="100" h="50" tr_text="Language2" style="text_align_left_white"/>
<radio_button x="0" y="middle" w="100%" h="50" name="lang_ch" tr_text="Chinese" style="radio_btn_style_font24"/>
<radio_button x="0" y="middle" w="100%" h="50" name="lang_en" tr_text="English" style="radio_btn_style_font24"/>
</view>
<label x="0" y="130" w="100" h="50" tr_text="CarModelColor" style="text_align_left_white"/>
<combo_box x="right:10" y="130" w="120" h="45" tr_text="white" options="white;black;red;blue;yellow;" name="Com_ModelColor" readonly="true"/>
`
语言切换代码: static ret_t change_locale(void ctx, event_t e) { char country[3]; char language[3]; const char str = (const char)ctx; widget_t* widget = WIDGET(e->target); log_debug("dialog_user_set.c,#%s,lan=%s,btnNmae=%s,\n",func,str,widget->name); if (widget_get_value(widget)) { strncpy(language, str, 2); strncpy(country, str + 3, 2); locale_info_change(locale_info(), language, country); }
return RET_OK;
}
... if (strstr(name, "lang_ch")) { widget_on(widget, EVT_VALUE_CHANGED, change_locale, (void)"zh_CN"); } else if (strstr(name, "lang_en")) { widget_on(widget, EVT_VALUE_CHANGED, change_locale, (void)"en_US"); } ...
这是点击语言切换按钮后的dump打印信息: dialog_user_set.c,#change_locale,lan=en_US,btnNmae=lang_en, unload image bottomBtnBar unload image btn_dvr_n unload image btn_aps_n unload image btn_front_f unload image btn_rear_n unload image btn_left_n unload image btn_right_n unload image btn_3D_n unload image btn_set_n unload image radio_checked unload image radio_unchecked unload image arrow_down_n unload image cursor Obtained 55 stack frames.nm /usr/lib/libeventhubproxy.so(+0x17e4) [0xb6fb67e4] /lib/libc.so.6(+0x250b0) [0xb6cde0b0] /app/appUI() [0x6038e] /app/appUI() [0x60db4] /app/appUI() [0x60dea] /app/appUI() [0x61b96] /app/appUI() [0x62afa] /app/appUI() [0x48284] /app/appUI() [0x51788] /app/appUI() [0x52448] /app/appUI() [0x3d090] /app/appUI() [0x3d5a6] /app/appUI() [0x59a72] /app/appUI() [0x59fb0] /app/appUI() [0x59fd2] /app/appUI() [0x59fd2] /app/appUI() [0x5d24e] /app/appUI() [0x810a6] /app/appUI() [0x4ef82] /app/appUI() [0x17298] /app/appUI() [0x810a6] /app/appUI() [0x58906] /app/appUI() [0x3998c] /app/appUI() [0x399e0] /app/appUI() [0x39b12] /app/appUI() [0x588f0] /app/appUI() [0x39b52] /app/appUI() [0x588f0] /app/appUI() [0x59372] /app/appUI() [0x5aebe] /app/appUI() [0x5ae8a] /app/appUI() [0x5ae8a] /app/appUI() [0x5ae8a] /app/appUI() [0x70a56] /app/appUI() [0x6bca6] /app/appUI() [0x6d2ce] /app/appUI() [0x6d33e] /app/appUI() [0x4b630] /app/appUI() [0x810a6] /app/appUI() [0x58906] /app/appUI() [0x3976e] /app/appUI() [0x588f0] /app/appUI() [0x59372] /app/appUI() [0x5aebe] /app/appUI() [0x5ae8a] /app/appUI() [0x5ae8a] /app/appUI() [0x5ae8a] /app/appUI() [0x5ae8a] /app/appUI() [0x70a56] /app/appUI() [0x6bca6] /app/appUI() [0x6d2ce] /app/appUI() [0x6d33e] /app/appUI() [0x25514] /app/appUI() [0x162a2] /lib/libc.so.6(__libc_start_main+0x9d) [0xb6ccf7b2] tk_thread_destroy:362 thread != NULL fb_close fb_close ok on_app_exit
不太看得懂反汇编,但根据上面死机的地址,其中有一个地址是3d090,对应到dumpmap里面是在edit_set_text函数里面,所以我估计是combo_box导致死机的,然后我在xml里面把combo_box删掉,再切换语言,就不会死机了。ZLG有没有很懂反汇编的,看看,能不能定位到具体的死因。
如题 我的xml文件如附件,当切换语言时会死机,在pc上运行不会,在arm平台上就会死机,死机信息如附件。初步看是edit text切换语言时导致死机。