Commit Graph

75 Commits

Author SHA1 Message Date
Marco Trevisan 4a286dfade
gtk: Mark g_thread_join as a dealloc for g_thread_new (#3188)
g_thread_join() consumes the reference to the passed-in thread .
This will usually cause the GThread struct and associated resources to be freed.
2021-03-31 18:15:25 +02:00
orbitcowboy 178c5dd402 gtk.cfg: Added support for unknownMacros, found by daca@home 2020-12-22 09:44:52 +01:00
Sebastian ff88bf1080
gtk.cfg: Add some missing macro/function configurations (#2619)
Found by daca@home
2020-04-23 14:09:09 +02:00
Sebastian b06f4d4189
gtk.cfg/cppcheck-cfg.rng: Add Gtk utility functions, enhance RNG file (#2563)
This adds/fixes some miscellaneous Gtk/Glib utility functions.
Reference:
https://developer.gnome.org/glib/stable/glib-Miscellaneous-Utility-Functions.html
For specifying pointers to pointers as return value types the
cppcheck-cfg.rng has been enhanced to allow this.
2020-02-29 12:11:02 +01:00
Sebastian f0e3f9e79a
gtk.cfg: Fix/enhance Gtk library configuration (g_abort and others) (#2558)
test/CMakeLists.txt: Fix missing INCONCLUSIVE for Gtk configuration test
2020-02-27 13:16:43 +01:00
Sebastian fb36889d29
gtk.cfg: Fix syntax errors and false positives (#2552)
A missing definition for g_assert_cmp*() causes syntax errors if code
like g_assert_cmpint(a, ==, b); is encountered.
The function g_hash_table_iter_replace() does not have to be marked
with leak-ignore since the memory could be freed later if corresponding
functions are present in the GHashTable. Since we can not know if this
is the case we have to assume that the memory is freed to avoid false
positives. The same is true for g_hash_table_insert() and
g_hash_table_replace().
2020-02-26 10:33:23 +01:00
versat 7e8ee31678 gtk.cfg: Add missing function configurations reported by daca@home
Add configuration for some g_value_*() functions and for
g_variant_unref().
2019-10-09 14:10:18 +02:00
versat 93e9e12aa1 gtk.cfg: Add some missing g_str*() functions found by daca@home 2019-10-08 10:01:38 +02:00
orbitcowboy 44add0b46a gtk.cfg: Added support for more macros found by daca@home 2019-09-27 08:50:28 +02:00
orbitcowboy c2a6053d7f gtk.cfg: Added support for more interfaces. 2019-09-26 08:24:49 +02:00
versat 88a034e4f1 gtk.cfg: Add some GTK_*() macros and the pod-type "GType" 2019-09-20 15:38:07 +02:00
versat 2b846461c8 gtk.cfg: Add configuration for macro G_OBJECT_WARN_INVALID_PROPERTY_ID 2019-09-16 15:04:41 +02:00
versat 89e0911c9c gtk.cfg: Add/fix some g_slist_*() functions
Reference:
https://developer.gnome.org/glib/stable/glib-Singly-Linked-Lists.html
https://github.com/GNOME/glib/blob/master/glib/gslist.h
2019-09-13 16:06:41 +02:00
versat efa3311d91 gtk.cfg: Fix some more functions with partly missing configuration 2019-09-02 10:30:07 +02:00
versat 99ba01b1c6 gtk.cfg: Fix incomplete configuration for g_set_error*()
Reference:
https://developer.gnome.org/glib/stable/glib-Error-Reporting.html#g-set-error
2019-08-28 09:05:50 +02:00
versat c1c54d2e26 gtk.cfg: Enhance some gtk_signal_* functions
Add deprecation warnings and missing configurations for some of the
gtk_signal_* functions.
References:
https://developer.gnome.org/gtk2/stable/gtk2-Signals.html
https://developer.gimp.org/api/2.0/gtk/gtk-Signals.html
2019-08-28 08:30:09 +02:00
versat 9d653705b0 gtk.cfg: Add some missing information about functions
daca@home complained that there is no "noreturn" configuration for these
functions likely because the number of arguments did not match.
2019-08-27 15:14:51 +02:00
versat 56bd9b742f gtk.cfg: Add configuration for function g_signal_new()
https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-new
Found by daca@home
2019-08-21 13:13:12 +02:00
Sebastian a2a874dbd5
gtk.cfg: Add/enhance function configurations and tests. (#2101)
Add/enhance:
g_once_init_enter(), g_once_init_leave() and g_signal_emit_by_name()
2019-08-20 15:00:30 +02:00
versat 7965ac5858 gtk.cfg: Add/fix more function configurations
daca@home reported a missing noreturn configuration for most of these
functions.
2019-08-01 15:05:42 +02:00
versat 64b4ed5b13 gtk.cfg: Add/fix function configurations
daca@home reported a missing noreturn configuration for most of these
functions.
2019-08-01 13:44:53 +02:00
orbitcowboy 4704b1d331 gtk.cfg: Added support for more macros, found by daca@home. 2019-08-01 10:12:31 +02:00
Sebastian 820ffdeee8
gtk.cfg: Add some macros and functions reported as missing by daca@home (#2005) 2019-07-16 13:42:01 +02:00
Rikard Falkeborn dcc375ca64 Update gtk memory functions (#2000)
* Improve configuration of g_try_realloc and g_try_realloc_n
* Mark g_realloc and similar functions as realloc functions
* Remove g_new, g_new0, etc as <alloc> functions, these are defined as
  macros and handled as the functions they're expanded to.
* Add tests. TODO tests will be resolved by using the library
  configuration in the checker.
2019-07-15 14:51:58 +02:00
versat aaecd300de gtk.cfg: Add some gtk_widget_* functions
Found by daca@home (checkLibraryNoReturn)
2019-07-12 13:58:39 +02:00
versat f7e1a12c6f gtk.cfg: Fix g_object_new configuration, argument 2 can be NULL
It is valid to use NULL as second argument and thus do not specify any
properties for this object.
2019-07-12 12:37:02 +02:00
versat 2f1d828b0c gtk.cfg: Add more g_object_* functions
Found by daca@home
2019-07-12 12:10:45 +02:00
Sebastian f239d4675b
gtk.cfg: Add g_object_set() (#1981)
Reference:
https://developer.gnome.org/gobject/stable/gobject-The-Base-Object-Type.html#g-object-set
2019-07-11 13:13:08 +02:00
Sebastian 1cb90f925e
gtk.cfg: Add gtk_box_new(), gtk_hbox_new() and gtk_vbox_new() (#1975)
References:
https://developer.gnome.org/gtk3/stable/GtkBox.html#gtk-box-new
https://developer.gnome.org/gtk3/stable/GtkHBox.html#gtk-hbox-new
https://developer.gnome.org/gtk3/stable/GtkVBox.html#gtk-vbox-new

Found by daca@home
2019-07-10 11:28:54 +02:00
Rikard Falkeborn 60a213e6a5 Fix #9047 (c-style casts before malloc) (#1930)
* Fix #9047 (c-style casts before malloc)

Note that there are still no warnings for c++-style casts

* Fix memleak check with casts of assignments in if-statements

* Fix possible null pointer dereference

As pointed out by cppcheck.

* Add check of astOperand2 when removing casts

This is similar to how it is done in other checks.
2019-07-03 08:39:44 +02:00
Rikard Falkeborn b530b3dfff Remove <noreturn> from g_malloc and friends (#1942)
From the Gnome Developer documentation
(https://developer.gnome.org/glib/stable/glib-Memory-Allocation.html):

    If any call to allocate memory using functions g_new(), g_new0(),
    g_renew(), g_malloc(), g_malloc0(), g_malloc0_n(), g_realloc(), and
    g_realloc_n() fails, the application is terminated. This also means
    that there is no need to check if the call succeeded. On the other
    hand, g_try_...() family of functions returns NULL on failure that
    can be used as a check for unsuccessful memory allocation. The
    application is not terminated in this case.

g_new(), g_new0() and g_renew() are defines using g_malloc(),
g_malloc0() and g_realloc() respectively, so there is no need to change
those.
2019-07-02 11:51:28 +02:00
Sebastian 389df97352
gtk.cfg: Add/improve g_ascii_*() functions (#1927)
* gtk.cfg: Add/improve g_ascii_*() functions

Found via daca@home

* gtk.cfg: Add `<const/>` where applicable (forgotten in last commit)

* gtk.cfg: Add `<valid>0:255</valid>` for `gchar` ASCII value arguments
2019-06-30 21:16:45 +02:00
Sebastian d745dcc0eb
gtk.cfg: Add g_error_*() functions (#1922) 2019-06-25 19:19:10 +02:00
versat 206488c0ea gtk.cfg: Add some g_list_*() function / macro configurations.
Found missing by daca@home.
2019-04-18 10:49:02 +02:00
versat 974f01ce59 gtk.cfg: Add / improve g_str*() functions and add GTK_SIGNAL_FUNC(). 2019-04-01 16:15:32 +02:00
versat 9d8b965270 gtk.cfg: Add / improve g_string_*() function configurations.
daca@home reported missing configurations for most of them.
2019-04-01 15:33:27 +02:00
Sebastian 6976d5c6e2
gtk.cfg: Add support for g_new() and similar macros. (#1760)
Also add / improve corresponding function configurations and some tests.
2019-03-26 10:45:06 +01:00
versat 0372c9cde6 gtk.cfg: Add buffer-size attribute to `alloc` entries. 2019-03-20 16:30:28 +01:00
versat 45b1c717ae gtk.cfg: Add support for g_object_(get|set)_data[_full](). 2019-03-20 16:10:18 +01:00
versat 0cb45b1f42 gtk.cfg: Add more macros and some functions used in the macros. 2019-03-15 14:51:45 +01:00
orbitcowboy 782958d814 wxwidgets.cfg: Added more directions-attributes. 2019-03-04 10:53:25 +01:00
orbitcowboy 391ed97717 gtk.cfg: Added support for more macros. 2019-03-04 10:43:21 +01:00
orbitcowboy 7d266e688c gtk.cfg: Added support for more interfaces. 2019-03-03 17:42:58 +01:00
orbitcowboy f66dde018d gtk.cfg: Added support for GTK_DIALOG-macro. 2019-03-03 17:28:05 +01:00
orbitcowboy 915280beec gtk.cfg: Added support for GTK_LABEL-macro. 2019-03-03 17:25:49 +01:00
orbitcowboy 68f4243c89 gtk.cfg: Added support for GTK_TREE_VIEW-macro. 2019-03-03 17:22:35 +01:00
versat 24739dc5f2 gtk.cfg: Add support for g_message() and similar printf like functions.
g_error() is special because it never returns.
2019-03-01 11:20:28 +01:00
versat f6c3749015 gtk.cfg: Add support for g_alloca() and g_newa().
References:
https://developer.gnome.org/glib/stable/glib-Memory-Allocation.html#g-alloca
https://github.com/GNOME/glib/blob/master/glib/galloca.h
2019-02-28 15:29:37 +01:00
Sebastian 2a45d390f3
gtk.cfg: Add support for gtk_label_new(), enhance gtk_label_get(). (#1706)
References:
https://developer.gnome.org/gtk3/stable/GtkLabel.html#gtk-label-new
https://developer.gnome.org/gtk2/stable/GtkLabel.html#gtk-label-get
Found by daca@home.
2019-02-27 12:56:21 +01:00
versat dc63cb9f98 gtk.cfg: Add more details for g_print() and g_printerr()
Reference:
https://developer.gnome.org/glib/stable/glib-Warnings-and-Assertions.html#g-print
2019-02-18 16:48:46 +01:00