As I've said before, I'm attached a patch for minor bugs in the e17 again.
Please take a look at attached patch.
01. missing E_FREE(wev) if zone is null
File: src/bin/e_actions.c: 1467
Function: ACT_FN_GO_EDGE macro function
null check of zone and wev, it would be better to separate them.
02. dead code
File: src/bin/e_configure.c: 338
Function: _e_configure_efreet_desktop_update
03. array buf might be overwritten by "buf[i] = '\0'"
File: src/bin/e_eap_editor.c: 412
Function: _e_desktop_edit_user_local_desktop_filename_generate
04. missing null check
File: src/bin/e_fm.c
Function: e_fm2_icon_get: 2196
It would be better to check ic->info.file in e_fm2_icon_get
before passing to _e_fm2_file_is_edje because it doesn't check
null pointer.
05. array 'path' might be overwritten by "path[i + 1] = XXX"
File: src/bin/e_fm.c: 4299
Function: _e_fm2_uri_parse
06. missing null check
File: src/bin/e_fm_device.c: 468
Function: e_fm2_device_mount_find
If the null pointer is passed to e_fm2_device_mount_find,
then it attempt to compare string using strncmp without null
check.
e.g., e_fm2_path_set
-> real_path = _e_fm2_dev_path_map: this function could return null.
-> sd->realpath = real_path;
-> e_fm2_device_mount_find(sd->realpath)
07. missing free(fstrip)
File: src/bin/e_import_config_dialog.c: 34
Function: _import_edj_gen
08. missing _module_free(cfm)
File: src/bin/e_int_config_modules.c: 530
Function: _load_modules
09. missing free(class) in for loop
File: src/bin/e_int_menus.c: 1187
Function: _e_int_menus_clients_add_by_class
10. missing free(roots)
File: src/bin/e_main.c: 1646
Function: _e_main_screens_init
Actually only e_win_init function could return 0.
But I've added free to other codes for the consistency.
11. missing null check of 'es->cfg'
File: src/bin/e_shelf.c: 2583
Function: _e_shelf_bindings_add
'es->cfg' might be null. please look at e_shelf_position_calc.
12. no ect->category check before comparing string values
File: src/bin/e_theme.c: 387
Function: e_theme_config_remove
I'm not sure, but inner if block checks ect->category before
deleting a string.
13. missing E_FREE(wcb) in while loop
File: src/bin/e_widget_ilist.c: 146
Function: _queue_timer
14. dereferencing freed pointer 'entry'
File: src/modules/quickaccess/e_mod_quickaccess.c: 583
Function: _e_qa_event_border_remove_cb
15. missing E_FREE(trov)
File: src/modules/tiling/e_mod_tiling.c: 3106
Function: _do_transition_overlay
Thanks & Regards,
Gwanglim
SVN revision: 80231
Those static lists were only used in config dialogs, so they are not
'required' to be static and existing while E is running. The config
dialogs can just call the e_theme_*_list functions when they need to.
NB: This reduces E's memory footprint !! :)
SVN revision: 63529
Do not abuse the concept of e_*_init(), make them call-once and those
that needed multiple call are renamed to e_*_update(). To make sure
convert them to EINTERN so the symbols are not exported.
Actually I guess too much is exported as EAPI while they should be
EINTERN, but that would require manual investigation, while this patch
was basically created with sed + grep.
SVN revision: 54795
* Remove vim modelines:
find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;
* Remove leading blank lines:
find . -name '*.[cxh]' -exec sed -i '/./,$!d'
If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0
SVN revision: 50816
edje obj swallowing windows, selection mechanism to have myltiple styles (2
examples), signals for focus, urgent, comp stuff now in core theme.... dump
and flush supported now (sends messages).
SVN revision: 47950
You will probably loose desktop icons until you get a fresh profile. Or you can edit the
.desktop files in .e/e/fileman/favorites (new icons name are: user-desktop, user-home, computer and user-temp)
Sorry for bothering... the next commit should be the last ;)
SVN revision: 39419
But is so big i fear i could have broken some piece of code. So report any wrong
behaviour to me (cedric on #edevelop).
So moving e17 and efreet to eina_hash. With a little efreet API break so they
must come together.
SVN revision: 38185
all group names prefaced by e/
its entirely possible i missed a few small places in this, so there may be some growing pains in the next day or two
also, spectrum content -> e.swallow.content
SVN revision: 25057
falls back to default of course if theme doesnt provide them) and this
works for EAP icons too - if you give your EAP icons an icon class
like "web_browser" and if the theme provides a theme override for icons of
class "web_browser" then the theme icon is used instead of the .eap internal
image. not surethis is perfect as u want more "specific" and "more general"
levels - maybe i should make the eapp icon class a list of classes the icon
is part of...
SVN revision: 15951