Skip to content

Commit 6715d60

Browse files
Various manual fixes
- GLib: Workaround duplicated types in the GLib namspace being preferred - Gio: Hide internal impl details leaking in the introspection - Gdk: Replace windows specific types with gpointer
1 parent f7cc268 commit 6715d60

File tree

5 files changed

+36
-15
lines changed

5 files changed

+36
-15
lines changed

GLibUnix-2.0.gir

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ This function preserves the value of `errno`.</doc>
6363
<parameters>
6464
<parameter name="self" transfer-ownership="none">
6565
<doc xml:space="preserve">a #GUnixPipe</doc>
66-
<type name="GLib.UnixPipe" c:type="GUnixPipe*"/>
66+
<type name="GLibUnix.Pipe" c:type="GUnixPipe*"/>
6767
</parameter>
6868
</parameters>
6969
</function>
@@ -91,11 +91,11 @@ g_unix_pipe_clear() instead.</doc>
9191
<parameters>
9292
<parameter name="self" transfer-ownership="none">
9393
<doc xml:space="preserve">A pair of file descriptors</doc>
94-
<type name="GLib.UnixPipe" c:type="GUnixPipe*"/>
94+
<type name="GLibUnix.Pipe" c:type="GUnixPipe*"/>
9595
</parameter>
9696
<parameter name="end" transfer-ownership="none">
9797
<doc xml:space="preserve">One of the ends of the pipe</doc>
98-
<type name="GLib.UnixPipeEnd" c:type="GUnixPipeEnd"/>
98+
<type name="GLibUnix.PipeEnd" c:type="GUnixPipeEnd"/>
9999
</parameter>
100100
</parameters>
101101
</function>
@@ -116,11 +116,11 @@ This function preserves the value of `errno`.</doc>
116116
<parameters>
117117
<parameter name="self" transfer-ownership="none">
118118
<doc xml:space="preserve">A pair of file descriptors</doc>
119-
<type name="GLib.UnixPipe" c:type="GUnixPipe*"/>
119+
<type name="GLibUnix.Pipe" c:type="GUnixPipe*"/>
120120
</parameter>
121121
<parameter name="end" transfer-ownership="none">
122122
<doc xml:space="preserve">One of the ends of the pipe</doc>
123-
<type name="GLib.UnixPipeEnd" c:type="GUnixPipeEnd"/>
123+
<type name="GLibUnix.PipeEnd" c:type="GUnixPipeEnd"/>
124124
</parameter>
125125
</parameters>
126126
</function>
@@ -134,7 +134,7 @@ This function preserves the value of `errno`.</doc>
134134
<parameters>
135135
<parameter name="self" transfer-ownership="none">
136136
<doc xml:space="preserve">A pair of file descriptors</doc>
137-
<type name="GLib.UnixPipe" c:type="GUnixPipe*"/>
137+
<type name="GLibUnix.Pipe" c:type="GUnixPipe*"/>
138138
</parameter>
139139
<parameter name="flags" transfer-ownership="none">
140140
<doc xml:space="preserve">Flags to pass to g_unix_open_pipe(), typically `O_CLOEXEC`</doc>
@@ -161,11 +161,11 @@ This function preserves the value of `errno`.</doc>
161161
<parameters>
162162
<parameter name="self" transfer-ownership="none">
163163
<doc xml:space="preserve">A pair of file descriptors</doc>
164-
<type name="GLib.UnixPipe" c:type="GUnixPipe*"/>
164+
<type name="GLibUnix.Pipe" c:type="GUnixPipe*"/>
165165
</parameter>
166166
<parameter name="end" transfer-ownership="none">
167167
<doc xml:space="preserve">One of the ends of the pipe</doc>
168-
<type name="GLib.UnixPipeEnd" c:type="GUnixPipeEnd"/>
168+
<type name="GLibUnix.PipeEnd" c:type="GUnixPipeEnd"/>
169169
</parameter>
170170
</parameters>
171171
</function>

GLibWin32-2.0.gir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ and/or use gtk-doc annotations. -->
4040
<type name="gint" c:type="const gint"/>
4141
</parameter>
4242
<parameter name="os_type" transfer-ownership="none">
43-
<type name="GLib.Win32OSType" c:type="const GWin32OSType"/>
43+
<type name="OSType" c:type="const GWin32OSType"/>
4444
</parameter>
4545
</parameters>
4646
</function>

GdkWin32-4.0.gir

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ possibly with changing properties in between.</doc>
111111
associated with.</doc>
112112
<return-value transfer-ownership="none" nullable="1">
113113
<doc xml:space="preserve">the fence</doc>
114-
<type c:type="ID3D12Fence*"/>
114+
<type c:type="gpointer" name="gpointer"/>
115115
</return-value>
116116
<parameters>
117117
<instance-parameter name="self" transfer-ownership="none">
@@ -152,7 +152,7 @@ before using the resource.</doc>
152152
associated with.</doc>
153153
<return-value transfer-ownership="none" nullable="1">
154154
<doc xml:space="preserve">the resource</doc>
155-
<type c:type="ID3D12Resource*"/>
155+
<type c:type="gpointer" name="gpointer"/>
156156
</return-value>
157157
<parameters>
158158
<instance-parameter name="self" transfer-ownership="none">
@@ -222,7 +222,7 @@ a texture for.</doc>
222222
</instance-parameter>
223223
<parameter name="fence" transfer-ownership="none">
224224
<doc xml:space="preserve">the fence</doc>
225-
<type c:type="ID3D12Fence*"/>
225+
<type c:type="gpointer" name="gpointer"/>
226226
</parameter>
227227
</parameters>
228228
</method>
@@ -277,7 +277,7 @@ a texture for.</doc>
277277
</instance-parameter>
278278
<parameter name="resource" transfer-ownership="none">
279279
<doc xml:space="preserve">the resource</doc>
280-
<type c:type="ID3D12Resource*"/>
280+
<type c:type="gpointer" name="gpointer"/>
281281
</parameter>
282282
</parameters>
283283
</method>

GioWin32-2.0.gir

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -218,15 +218,15 @@ when the stream is closed.</doc>
218218
</function-macro>
219219
<record name="NetworkMonitor" c:type="GWin32NetworkMonitor">
220220
<field name="parent_instance" introspectable="0" writable="1">
221-
<type c:type="GNetworkMonitorBase"/>
221+
<type c:type="GNetworkMonitorBase" name="gpointer"/>
222222
</field>
223223
<field name="priv" writable="1">
224224
<type name="NetworkMonitorPrivate" c:type="GWin32NetworkMonitorPrivate*"/>
225225
</field>
226226
</record>
227227
<record name="NetworkMonitorClass" c:type="GWin32NetworkMonitorClass">
228228
<field name="parent_class" introspectable="0" writable="1">
229-
<type c:type="GNetworkMonitorBaseClass"/>
229+
<type c:type="GNetworkMonitorBaseClass" name="gpointer"/>
230230
</field>
231231
</record>
232232
<record name="NetworkMonitorPrivate" c:type="GWin32NetworkMonitorPrivate" disguised="1" opaque="1"/>

fix.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,10 @@ xmlstarlet ed -L \
169169
-u '//_:function[@name="win32_set_modal_dialog_libgtk_only"]//_:type[@name="win32.HWND"]/@c:type' -v 'gssize' \
170170
-u '//_:function[@name="win32_icon_to_pixbuf_libgtk_only"]//_:type[@name="win32.HICON"]/@c:type' -v 'gssize' \
171171
-u '//_:function[@name="win32_pixbuf_to_hicon_libgtk_only"]//_:type[@name="win32.HICON"]/@c:type' -v 'gssize' \
172+
-i '//_:type[@c:type="ID3D12Fence*" and not(@name)]' -t 'attr' -n 'name' -v "gpointer" \
173+
-u '//_:type[@c:type="ID3D12Fence*"]/@c:type' -v "gpointer" \
174+
-i '//_:type[@c:type="ID3D12Resource*" and not(@name)]' -t 'attr' -n 'name' -v "gpointer" \
175+
-u '//_:type[@c:type="ID3D12Resource*"]/@c:type' -v "gpointer" \
172176
GdkWin32-4.0.gir
173177

174178
# Fix invalid type for GtkImage and GtkStackSwitcher "icon-size" property
@@ -178,3 +182,20 @@ xmlstarlet ed -L \
178182
-u '//_:class[@name="StackSwitcher"]/_:property[@name="icon-size"]/_:type/@c:type' -v "GtkIconSize" \
179183
-u '//_:class[@name="StackSwitcher"]/_:property[@name="icon-size"]/_:type/@name' -v "IconSize" \
180184
Gtk-3.0.gir
185+
186+
# Fix GLibUnix type names to use GLibUnix prefix instead of GLib
187+
xmlstarlet ed -L \
188+
-u '//_:type[@name="GLib.UnixPipe"]/@name' -v "GLibUnix.Pipe" \
189+
-u '//_:type[@name="GLib.UnixPipeEnd"]/@name' -v "GLibUnix.PipeEnd" \
190+
GLibUnix-2.0.gir
191+
192+
# Fix GLibWin32 type name to remove GLib prefix
193+
xmlstarlet ed -L \
194+
-u '//_:type[@name="GLib.Win32OSType"]/@name' -v "OSType" \
195+
GLibWin32-2.0.gir
196+
197+
# Fix GioWin32 NetworkMonitor types to use gpointer
198+
xmlstarlet ed -L \
199+
-i '//_:record[@name="NetworkMonitor"]/_:field[@name="parent_instance"]/_:type[@c:type="GNetworkMonitorBase" and not(@name)]' -t 'attr' -n 'name' -v "gpointer" \
200+
-i '//_:record[@name="NetworkMonitorClass"]/_:field[@name="parent_class"]/_:type[@c:type="GNetworkMonitorBaseClass" and not(@name)]' -t 'attr' -n 'name' -v "gpointer" \
201+
GioWin32-2.0.gir

0 commit comments

Comments
 (0)