在1012版本中,scrn_active()函数中设置active screen id:
set_active_scrn_id(node->parent->id, 0xFFFF & (node->id));
但是这个screen id并没有放入history中。
电子书每次打开时都会设置一个全局变量g_ebook_explorer_id:
if (mmi_fmgr_browse_path(
APP_EBOOK,
0,
filter,
drive_path,
&setting))
{
g_ebook_explorer_id = GetActiveScreenId();
}
这个时候的 g_ebook_explorer_id 就是在scrn_active()函数中设置active screen id。
以致在mmi_ebr_entry_close_book函数中:
if(IsScreenPresent(g_ebook_explorer_id))
{
DeleteUptoScrID(g_ebook_explorer_id);
GoBackHistory();
}
这段代码是永远不会成立的。