Thank you for the valuable feedback. I tried as much as I could to maintain
the semantics as is, only changing the calls to GLib's functions.
To assure myself that I understood the directions of your feedback, the initialization
of the tables can be done using g_malloc directly and all the null checks for the tables
to be dropped. And that's because of the cruciality of this initialization code.
Can you please elaborate more on how I would employ g_autofree in this code? Are
you talking about the memory allocated for ``ptr`` in OPLCreate here?
Thanks
Mahmoud Mandour