Hey folks,
We have started work on issue 11, and we have some questions to ensure we tackle the issue properly.
- What are the different use cases for g_autoptr vs g_autofree? We found that g_autofree is preferred for anything that uses g_malloc according to the Glib documentation, and g_autoptr is for types with custom destructors. However, when using g_autoptr, we got compile errors when trying to pass the g_autoptr as an argument (the argument seems to be converted to an integer). When should we use each of these, and when should we not convert them at all?
- We see that some work has been done to convert files to use the Glib API. In some cases, files contain code that uses both the old memory management API and the Glib API. Should we focus our attention on files where these conversions are not yet underway? Or should we expect that many of the files are only partially converted?
- In some cases, we found that converting to the Glib API might require cascading changes to code structure (function parameter types, function return types). Is it advisable to pursue these cases as well, or should we limit changes to pointers which are declared and then freed within one method?
- Do you know of a directory or set of files where the conversions to the Glib API are needed?
We appreciate the correspondence, and we hope to use this information to make a good contribution to the project!
Best regards,
Dustan Helm
Barrett Schonefeld
Ryan Gahagan