{"id":15968686,"url":"https://github.com/smokku/libgmbus","last_synced_at":"2025-04-04T14:25:41.419Z","repository":{"id":5323280,"uuid":"6506291","full_name":"smokku/libgmbus","owner":"smokku","description":"C Mbus Implementation","archived":false,"fork":false,"pushed_at":"2012-11-02T14:21:57.000Z","size":212,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-02T09:53:29.970Z","etag":null,"topics":["c","library","mbus","message-bus"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"raspberrypi/linux","license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smokku.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-11-02T13:16:57.000Z","updated_at":"2018-04-07T13:09:45.000Z","dependencies_parsed_at":"2022-09-13T00:31:12.928Z","dependency_job_id":null,"html_url":"https://github.com/smokku/libgmbus","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smokku%2Flibgmbus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smokku%2Flibgmbus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smokku%2Flibgmbus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smokku%2Flibgmbus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smokku","download_url":"https://codeload.github.com/smokku/libgmbus/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247192307,"owners_count":20899067,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","library","mbus","message-bus"],"created_at":"2024-10-07T19:03:21.784Z","updated_at":"2025-04-04T14:25:41.404Z","avatar_url":"https://github.com/smokku.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Memory Management\n-----------------\n\nThis (should) apply to the memory management used for gmbus:\n\n1. Arguments of API functions\n  a) the memory of each object passed to the gmbus API is handled by the\n     library, meaning the memory is freed if gmbus does not need it anymore\n\n  b) except, the memory of const objects passed to the gmbus API that is not\n     freed by the library; if required the library creates its own copy of the\n     object.\n\n  c) if the argument is used as an return value (like the GString object passed\n     to the _read and _as_string functions) it is not freed by the library\n\n2. Arguments passed to callback functions\n  a) The memory of each argument passed to a callback function is handled by\n     the library, meaning it is allocated and freed. If the\n     application needs an object after the callback function is passed it has\n     to create its own copy of the object. If an object is passed on to another\n     function of the gmbus API within the callback function a copy has to be\n     created as in this case rule 1a) applies.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmokku%2Flibgmbus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmokku%2Flibgmbus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmokku%2Flibgmbus/lists"}