diff --git a/vte/Vte.metadata b/vte/Vte.metadata
index 353a24d50..746f2ee97 100644
--- a/vte/Vte.metadata
+++ b/vte/Vte.metadata
@@ -2,5 +2,7 @@
   <attr path="/api/namespace/object[@cname='VteReaper']" name="hidden">1</attr>
   <attr path="/api/namespace/object[@cname='VteTerminal']/method[@name='ForkCommand']/return-type" name="type">gint</attr>
   <attr path="//return-type[@type='GNone']" name="type">void</attr>
-  <attr path="//signal/parameters/parameter[@name='p0']" name="type">VteTerminal*</attr>
+  <attr path="/api/namespace/object[@cname='VteBg']/signal/parameters/parameter[@name='p0']" name="type">VteBg*</attr>
+  <attr path="/api/namespace/object[@cname='VteReaper']/signal/parameters/parameter[@name='p0']" name="type">VteReaper*</attr>
+  <attr path="/api/namespace/object[@cname='VteTerminal']/signal/parameters/parameter[@name='p0']" name="type">VteTerminal*</attr>
 </metadata>
diff --git a/vte/vte-api.xml b/vte/vte-api.xml
index ac85b7e4c..bca428a57 100644
--- a/vte/vte-api.xml
+++ b/vte/vte-api.xml
@@ -47,7 +47,7 @@
       <signal name="RootPixmapChanged" cname="root-pixmap-changed" when="LAST">
         <return-type type="void" />
         <parameters>
-          <parameter name="p0" type="VteTerminal*" />
+          <parameter name="p0" type="VteBg*" />
         </parameters>
       </signal>
       <method name="Get" cname="vte_bg_get" shared="true">
@@ -61,7 +61,7 @@
       <signal name="ChildExited" cname="child-exited" when="LAST">
         <return-type type="void" />
         <parameters>
-          <parameter name="p0" type="VteTerminal*" />
+          <parameter name="p0" type="VteReaper*" />
         </parameters>
       </signal>
       <method name="Get" cname="vte_reaper_get" shared="true">