Implement proper GError handling for callbacks
Submitted by Zach Goldberg
If one has a GError parameter to a callback function we need to handle it in a special way.
If the direction is IN/INOUT:
We need to convert the GError to a Python Exception (we can use this information from John E. to assist: 17:26
< jpe> zgold, look at pyglib_error_check in pygobject/pyglib.c for GError creation) and pass that exception as an argument to the python callback.
If the direction is INOUT/OUT: We need to convert any python exceptions which occur to a GError and set the pointer properly. If no python exception occurs we should probably keep the GError as null.