glib2 3.0.9-x64-mingw32 → 3.1.0-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (418) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +2 -2
  3. data/ext/glib2/extconf.rb +0 -3
  4. data/ext/glib2/glib2.def +3 -0
  5. data/ext/glib2/rbglib.c +52 -20
  6. data/ext/glib2/rbglib.h +2 -2
  7. data/ext/glib2/rbglib_iochannel.c +1 -1
  8. data/ext/glib2/rbglib_mainloop.c +34 -11
  9. data/ext/glib2/rbglib_messages.c +21 -14
  10. data/ext/glib2/rbgobj_closure.c +65 -28
  11. data/ext/glib2/rbgobj_signal.c +38 -2
  12. data/ext/glib2/rbgobject.h +16 -0
  13. data/ext/glib2/rbgutil.c +6 -6
  14. data/lib/2.2/glib2.so +0 -0
  15. data/lib/2.3/glib2.so +0 -0
  16. data/lib/glib2.rb +8 -3
  17. data/lib/gnome2/rake/external-package.rb +24 -1
  18. data/lib/gnome2/rake/windows-binary-build-task.rb +339 -338
  19. data/vendor/local/bin/asn1Coding.exe +0 -0
  20. data/vendor/local/bin/asn1Decoding.exe +0 -0
  21. data/vendor/local/bin/asn1Parser.exe +0 -0
  22. data/vendor/local/bin/envsubst.exe +0 -0
  23. data/vendor/local/bin/gdbus.exe +0 -0
  24. data/vendor/local/bin/gettext.exe +0 -0
  25. data/vendor/local/bin/gio-querymodules.exe +0 -0
  26. data/vendor/local/bin/gio.exe +0 -0
  27. data/vendor/local/bin/glib-compile-resources.exe +0 -0
  28. data/vendor/local/bin/glib-compile-schemas.exe +0 -0
  29. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  30. data/vendor/local/bin/glib-gettextize +1 -1
  31. data/vendor/local/bin/glib-mkenums +1 -1
  32. data/vendor/local/bin/gobject-query.exe +0 -0
  33. data/vendor/local/bin/gresource.exe +0 -0
  34. data/vendor/local/bin/gsettings.exe +0 -0
  35. data/vendor/local/bin/gspawn-win64-helper-console.exe +0 -0
  36. data/vendor/local/bin/gspawn-win64-helper.exe +0 -0
  37. data/vendor/local/bin/iconv.exe +0 -0
  38. data/vendor/local/bin/idn.exe +0 -0
  39. data/vendor/local/bin/libasprintf-0.dll +0 -0
  40. data/vendor/local/bin/libcharset-1.dll +0 -0
  41. data/vendor/local/bin/libffi-6.dll +0 -0
  42. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  43. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  44. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  45. data/vendor/local/bin/libgmp-10.dll +0 -0
  46. data/vendor/local/bin/libgnutls-30.dll +0 -0
  47. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  48. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  49. data/vendor/local/bin/libhogweed-4-2.dll +0 -0
  50. data/vendor/local/bin/libiconv-2.dll +0 -0
  51. data/vendor/local/bin/libidn-11.dll +0 -0
  52. data/vendor/local/bin/libintl-8.dll +0 -0
  53. data/vendor/local/bin/libnettle-6-2.dll +0 -0
  54. data/vendor/local/bin/libp11-kit-0.dll +0 -0
  55. data/vendor/local/bin/libpcre-1.dll +0 -0
  56. data/vendor/local/bin/libpcrecpp-0.dll +0 -0
  57. data/vendor/local/bin/libpcreposix-0.dll +0 -0
  58. data/vendor/local/bin/libtasn1-6.dll +0 -0
  59. data/vendor/local/bin/nettle-hash.exe +0 -0
  60. data/vendor/local/bin/nettle-lfib-stream.exe +0 -0
  61. data/vendor/local/bin/nettle-pbkdf2.exe +0 -0
  62. data/vendor/local/bin/ngettext.exe +0 -0
  63. data/vendor/local/bin/p11-kit.exe +0 -0
  64. data/vendor/local/bin/pcregrep.exe +0 -0
  65. data/vendor/local/bin/pcretest.exe +0 -0
  66. data/vendor/local/bin/pkcs1-conv.exe +0 -0
  67. data/vendor/local/bin/sexp-conv.exe +0 -0
  68. data/vendor/local/bin/trust.exe +0 -0
  69. data/vendor/local/include/glib-2.0/gio/gappinfo.h +11 -0
  70. data/vendor/local/include/glib-2.0/gio/gdrive.h +4 -0
  71. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +9 -0
  72. data/vendor/local/include/glib-2.0/gio/gio-autocleanups.h +1 -0
  73. data/vendor/local/include/glib-2.0/gio/gioenums.h +10 -10
  74. data/vendor/local/include/glib-2.0/gio/giotypes.h +1 -1
  75. data/vendor/local/include/glib-2.0/gio/gsettings.h +14 -0
  76. data/vendor/local/include/glib-2.0/gio/gvfs.h +36 -0
  77. data/vendor/local/include/glib-2.0/glib/gchecksum.h +1 -1
  78. data/vendor/local/include/glib-2.0/glib/ghmac.h +5 -0
  79. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +6 -0
  80. data/vendor/local/include/glib-2.0/glib/gmacros.h +1 -1
  81. data/vendor/local/include/glib-2.0/glib/gmain.h +11 -0
  82. data/vendor/local/include/glib-2.0/glib/gmessages.h +211 -2
  83. data/vendor/local/include/glib-2.0/glib/gtypes.h +2 -1
  84. data/vendor/local/include/glib-2.0/glib/gunicode.h +23 -3
  85. data/vendor/local/include/glib-2.0/glib/gutils.h +10 -0
  86. data/vendor/local/include/glib-2.0/glib/gvariant.h +71 -2
  87. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +0 -1
  88. data/vendor/local/include/glib-2.0/glib/gversionmacros.h +23 -0
  89. data/vendor/local/include/glib-2.0/gobject/gparam.h +2 -1
  90. data/vendor/local/include/glib-2.0/gobject/gsignal.h +1 -1
  91. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +2 -0
  92. data/vendor/local/include/gmp.h +1 -1
  93. data/vendor/local/include/nettle/nettle-stdint.h +1 -1
  94. data/vendor/local/lib/gio/modules/libgiognutls.a +0 -0
  95. data/vendor/local/lib/gio/modules/libgiognutls.dll +0 -0
  96. data/vendor/local/lib/gio/modules/libgiognutls.dll.a +0 -0
  97. data/vendor/local/lib/glib-2.0/include/glibconfig.h +3 -2
  98. data/vendor/local/lib/libasprintf.a +0 -0
  99. data/vendor/local/lib/libasprintf.dll.a +0 -0
  100. data/vendor/local/lib/libcharset.a +0 -0
  101. data/vendor/local/lib/libcharset.dll.a +0 -0
  102. data/vendor/local/lib/libffi.a +0 -0
  103. data/vendor/local/lib/libffi.dll.a +0 -0
  104. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  105. data/vendor/local/lib/libgio-2.0.la +5 -5
  106. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  107. data/vendor/local/lib/libglib-2.0.la +5 -5
  108. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  109. data/vendor/local/lib/libgmodule-2.0.la +5 -5
  110. data/vendor/local/lib/libgmp.dll.a +0 -0
  111. data/vendor/local/lib/libgnutls.dll.a +0 -0
  112. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  113. data/vendor/local/lib/libgobject-2.0.la +5 -5
  114. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  115. data/vendor/local/lib/libgthread-2.0.la +5 -5
  116. data/vendor/local/lib/libhogweed.a +0 -0
  117. data/vendor/local/lib/libhogweed.dll.a +0 -0
  118. data/vendor/local/lib/libiconv.dll.a +0 -0
  119. data/vendor/local/lib/libidn.a +0 -0
  120. data/vendor/local/lib/libidn.dll.a +0 -0
  121. data/vendor/local/lib/libintl.a +0 -0
  122. data/vendor/local/lib/libintl.dll.a +0 -0
  123. data/vendor/local/lib/libnettle.a +0 -0
  124. data/vendor/local/lib/libnettle.dll.a +0 -0
  125. data/vendor/local/lib/libp11-kit.dll.a +0 -0
  126. data/vendor/local/lib/libpcre.a +0 -0
  127. data/vendor/local/lib/libpcre.dll.a +0 -0
  128. data/vendor/local/lib/libpcrecpp.a +0 -0
  129. data/vendor/local/lib/libpcrecpp.dll.a +0 -0
  130. data/vendor/local/lib/libpcreposix.a +0 -0
  131. data/vendor/local/lib/libpcreposix.dll.a +0 -0
  132. data/vendor/local/lib/libtasn1.a +0 -0
  133. data/vendor/local/lib/libtasn1.dll.a +0 -0
  134. data/vendor/local/lib/p11-kit/p11-kit-remote.exe +0 -0
  135. data/vendor/local/lib/pkcs11/p11-kit-trust.dll +0 -0
  136. data/vendor/local/lib/pkcs11/p11-kit-trust.dll.a +0 -0
  137. data/vendor/local/lib/pkgconfig/gio-2.0.pc +2 -2
  138. data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +1 -1
  139. data/vendor/local/lib/pkgconfig/glib-2.0.pc +2 -2
  140. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +1 -1
  141. data/vendor/local/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
  142. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
  143. data/vendor/local/lib/pkgconfig/gnutls.pc +1 -1
  144. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +2 -2
  145. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +1 -1
  146. data/vendor/local/share/bash-completion/completions/gsettings +3 -3
  147. data/vendor/local/share/gdb/auto-load/home/vagrant/ruby-gnome2.win64/glib2/vendor/local/lib/{libglib-2.0.so.0.4800.1-gdb.py → libglib-2.0.so.0.5000.2-gdb.py} +1 -1
  148. data/vendor/local/share/gdb/auto-load/home/vagrant/ruby-gnome2.win64/glib2/vendor/local/lib/{libgobject-2.0.so.0.4800.1-gdb.py → libgobject-2.0.so.0.5000.2-gdb.py} +1 -1
  149. data/vendor/local/share/glib-2.0/codegen/__init__.pyc +0 -0
  150. data/vendor/local/share/glib-2.0/codegen/__init__.pyo +0 -0
  151. data/vendor/local/share/glib-2.0/codegen/codegen.py +32 -22
  152. data/vendor/local/share/glib-2.0/codegen/codegen.pyc +0 -0
  153. data/vendor/local/share/glib-2.0/codegen/codegen.pyo +0 -0
  154. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyc +0 -0
  155. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyo +0 -0
  156. data/vendor/local/share/glib-2.0/codegen/codegen_main.py +3 -0
  157. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyc +0 -0
  158. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyo +0 -0
  159. data/vendor/local/share/glib-2.0/codegen/config.py +1 -1
  160. data/vendor/local/share/glib-2.0/codegen/config.pyc +0 -0
  161. data/vendor/local/share/glib-2.0/codegen/config.pyo +0 -0
  162. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyc +0 -0
  163. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyo +0 -0
  164. data/vendor/local/share/glib-2.0/codegen/parser.py +8 -4
  165. data/vendor/local/share/glib-2.0/codegen/parser.pyc +0 -0
  166. data/vendor/local/share/glib-2.0/codegen/parser.pyo +0 -0
  167. data/vendor/local/share/glib-2.0/codegen/utils.py +8 -2
  168. data/vendor/local/share/glib-2.0/codegen/utils.pyc +0 -0
  169. data/vendor/local/share/glib-2.0/codegen/utils.pyo +0 -0
  170. data/vendor/local/share/glib-2.0/gdb/{glib.py → glib_gdb.py} +0 -0
  171. data/vendor/local/share/glib-2.0/gdb/{gobject.py → gobject_gdb.py} +3 -3
  172. data/vendor/local/share/gtk-doc/html/gio/GAction.html +1 -1
  173. data/vendor/local/share/gtk-doc/html/gio/GActionGroup.html +1 -1
  174. data/vendor/local/share/gtk-doc/html/gio/GActionMap.html +1 -1
  175. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +115 -8
  176. data/vendor/local/share/gtk-doc/html/gio/GApplication.html +4 -4
  177. data/vendor/local/share/gtk-doc/html/gio/GApplicationCommandLine.html +2 -1
  178. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +1 -1
  179. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +1 -1
  180. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +1 -1
  181. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +1 -1
  182. data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +5 -5
  183. data/vendor/local/share/gtk-doc/html/gio/GDBusInterface.html +1 -1
  184. data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +6 -6
  185. data/vendor/local/share/gtk-doc/html/gio/GDBusObject.html +1 -1
  186. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManager.html +1 -1
  187. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManagerClient.html +1 -1
  188. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManagerServer.html +3 -3
  189. data/vendor/local/share/gtk-doc/html/gio/GDatagramBased.html +8 -7
  190. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +44 -1
  191. data/vendor/local/share/gtk-doc/html/gio/GDtlsClientConnection.html +1 -1
  192. data/vendor/local/share/gtk-doc/html/gio/GDtlsConnection.html +1 -1
  193. data/vendor/local/share/gtk-doc/html/gio/GDtlsServerConnection.html +1 -1
  194. data/vendor/local/share/gtk-doc/html/gio/GFile.html +25 -23
  195. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +1 -1
  196. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +1 -1
  197. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +18 -4
  198. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +5 -5
  199. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +14 -10
  200. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +1 -1
  201. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +1 -1
  202. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +1 -1
  203. data/vendor/local/share/gtk-doc/html/gio/GListModel.html +1 -1
  204. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +1 -1
  205. data/vendor/local/share/gtk-doc/html/gio/GMenu.html +14 -14
  206. data/vendor/local/share/gtk-doc/html/gio/GMenuModel.html +1 -1
  207. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1 -1
  208. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +5 -5
  209. data/vendor/local/share/gtk-doc/html/gio/GNetworkMonitor.html +1 -1
  210. data/vendor/local/share/gtk-doc/html/gio/GPollableInputStream.html +1 -1
  211. data/vendor/local/share/gtk-doc/html/gio/GPollableOutputStream.html +1 -1
  212. data/vendor/local/share/gtk-doc/html/gio/GPropertyAction.html +4 -4
  213. data/vendor/local/share/gtk-doc/html/gio/GProxy.html +1 -1
  214. data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +1 -1
  215. data/vendor/local/share/gtk-doc/html/gio/GRemoteActionGroup.html +1 -1
  216. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +2 -0
  217. data/vendor/local/share/gtk-doc/html/gio/GResource.html +32 -2
  218. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +1 -1
  219. data/vendor/local/share/gtk-doc/html/gio/GSettings.html +234 -11
  220. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +1 -1
  221. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +3 -3
  222. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +10 -2
  223. data/vendor/local/share/gtk-doc/html/gio/GSrvTarget.html +1 -1
  224. data/vendor/local/share/gtk-doc/html/gio/GSubprocessLauncher.html +9 -9
  225. data/vendor/local/share/gtk-doc/html/gio/GTask.html +6 -6
  226. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +1 -1
  227. data/vendor/local/share/gtk-doc/html/gio/GTlsBackend.html +1 -1
  228. data/vendor/local/share/gtk-doc/html/gio/GTlsCertificate.html +10 -9
  229. data/vendor/local/share/gtk-doc/html/gio/GTlsClientConnection.html +1 -1
  230. data/vendor/local/share/gtk-doc/html/gio/GTlsFileDatabase.html +3 -3
  231. data/vendor/local/share/gtk-doc/html/gio/GTlsServerConnection.html +1 -1
  232. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +222 -0
  233. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1 -1
  234. data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +4 -2
  235. data/vendor/local/share/gtk-doc/html/gio/api-index-2-48.html +2 -2
  236. data/vendor/local/share/gtk-doc/html/gio/api-index-2-50.html +79 -0
  237. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +44 -0
  238. data/vendor/local/share/gtk-doc/html/gio/ch33.html +2 -2
  239. data/vendor/local/share/gtk-doc/html/gio/ch35.html +1 -1
  240. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +1 -1
  241. data/vendor/local/share/gtk-doc/html/gio/gapplication-tool.html +2 -2
  242. data/vendor/local/share/gtk-doc/html/gio/gdbus-codegen.html +18 -6
  243. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +1 -1
  244. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +7 -4
  245. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +1 -1
  246. data/vendor/local/share/gtk-doc/html/gio/gio-GSettingsSchema-GSettingsSchemaSource.html +3 -3
  247. data/vendor/local/share/gtk-doc/html/gio/gio-GWin32RegistryKey.html +2 -2
  248. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +10 -6
  249. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +2 -2
  250. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +14 -0
  251. data/vendor/local/share/gtk-doc/html/gio/gio.html +664 -0
  252. data/vendor/local/share/gtk-doc/html/gio/glib-compile-resources.html +19 -0
  253. data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +6 -0
  254. data/vendor/local/share/gtk-doc/html/gio/gsettings-tool.html +7 -0
  255. data/vendor/local/share/gtk-doc/html/gio/index.html +5 -1
  256. data/vendor/local/share/gtk-doc/html/gio/pt02.html +3 -0
  257. data/vendor/local/share/gtk-doc/html/gio/running-gio-apps.html +10 -9
  258. data/vendor/local/share/gtk-doc/html/gio/testing.html +2 -2
  259. data/vendor/local/share/gtk-doc/html/gio/tools.html +3 -0
  260. data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +4 -2
  261. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +2 -2
  262. data/vendor/local/share/gtk-doc/html/glib/api-index-2-40.html +1 -1
  263. data/vendor/local/share/gtk-doc/html/glib/api-index-2-46.html +1 -1
  264. data/vendor/local/share/gtk-doc/html/glib/api-index-2-48.html +2 -2
  265. data/vendor/local/share/gtk-doc/html/glib/api-index-2-50.html +121 -0
  266. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +2 -2
  267. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +110 -34
  268. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +1 -1
  269. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +10 -9
  270. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +4 -4
  271. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +10 -8
  272. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +8 -8
  273. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +1 -1
  274. data/vendor/local/share/gtk-doc/html/glib/glib-Data-HMACs.html +56 -2
  275. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +1 -1
  276. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +2 -2
  277. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +71 -50
  278. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +74 -17
  279. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +4 -4
  280. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +1 -1
  281. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2 -2
  282. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +57 -0
  283. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +3 -3
  284. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +2 -2
  285. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +1009 -13
  286. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +2 -2
  287. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +84 -56
  288. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +3 -0
  289. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1 -1
  290. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +4 -4
  291. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +1 -1
  292. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2 -2
  293. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +27 -13
  294. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +36 -14
  295. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +4 -4
  296. data/vendor/local/share/gtk-doc/html/glib/glib-UNIX-specific-utilities-and-integration.html +1 -1
  297. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +4 -4
  298. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +68 -5
  299. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +17 -4
  300. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +12 -23
  301. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +1 -1
  302. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +2 -3
  303. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +1 -1
  304. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +3 -2
  305. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +1 -1
  306. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +36 -2
  307. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +6 -6
  308. data/vendor/local/share/gtk-doc/html/glib/gvariant-text.html +1 -1
  309. data/vendor/local/share/gtk-doc/html/glib/index.html +4 -4
  310. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +1 -1
  311. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +1 -1
  312. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +1 -1
  313. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +1 -1
  314. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +3 -3
  315. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2 -2
  316. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2 -2
  317. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +2 -2
  318. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +2 -2
  319. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +1 -1
  320. data/vendor/local/share/gtk-doc/html/gobject/index.html +1 -1
  321. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +1 -1
  322. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Future.html +4 -4
  323. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Modules.html +12 -12
  324. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-PIN-Callbacks.html +15 -15
  325. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-URIs.html +2 -2
  326. data/vendor/local/share/gtk-doc/html/p11-kit/p11-kit-Utilities.html +2 -2
  327. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  328. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  329. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib-networking.mo +0 -0
  330. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  331. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib-networking.mo +0 -0
  332. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  333. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  334. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  335. data/vendor/local/share/locale/de/LC_MESSAGES/glib-networking.mo +0 -0
  336. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  337. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  338. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  339. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib-networking.mo +0 -0
  340. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  341. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib-networking.mo +0 -0
  342. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  343. data/vendor/local/share/locale/eo/LC_MESSAGES/glib-networking.mo +0 -0
  344. data/vendor/local/share/locale/es/LC_MESSAGES/glib-networking.mo +0 -0
  345. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  346. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  347. data/vendor/local/share/locale/fa/LC_MESSAGES/glib-networking.mo +0 -0
  348. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  349. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  350. data/vendor/local/share/locale/fr/LC_MESSAGES/glib-networking.mo +0 -0
  351. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  352. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  353. data/vendor/local/share/locale/gu/LC_MESSAGES/glib-networking.mo +0 -0
  354. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  355. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  356. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  357. data/vendor/local/share/locale/hu/LC_MESSAGES/glib-networking.mo +0 -0
  358. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  359. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  360. data/vendor/local/share/locale/it/LC_MESSAGES/glib-networking.mo +0 -0
  361. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  362. data/vendor/local/share/locale/kk/LC_MESSAGES/glib20.mo +0 -0
  363. data/vendor/local/share/locale/km/LC_MESSAGES/glib-networking.mo +0 -0
  364. data/vendor/local/share/locale/kn/LC_MESSAGES/glib-networking.mo +0 -0
  365. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  366. data/vendor/local/share/locale/lt/LC_MESSAGES/glib-networking.mo +0 -0
  367. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  368. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  369. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  370. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  371. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  372. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  373. data/vendor/local/share/locale/nb/LC_MESSAGES/glib-networking.mo +0 -0
  374. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  375. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  376. data/vendor/local/share/locale/oc/LC_MESSAGES/glib-networking.mo +0 -0
  377. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  378. data/vendor/local/share/locale/pa/LC_MESSAGES/glib-networking.mo +0 -0
  379. data/vendor/local/share/locale/pl/LC_MESSAGES/glib-networking.mo +0 -0
  380. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  381. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  382. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  383. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  384. data/vendor/local/share/locale/sl/LC_MESSAGES/glib-networking.mo +0 -0
  385. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  386. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  387. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  388. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  389. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib-networking.mo +0 -0
  390. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  391. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  392. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  393. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  394. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  395. data/vendor/local/share/locale/ug/LC_MESSAGES/glib-networking.mo +0 -0
  396. data/vendor/local/share/locale/ug/LC_MESSAGES/glib20.mo +0 -0
  397. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  398. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib-networking.mo +0 -0
  399. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib-networking.mo +0 -0
  400. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  401. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib-networking.mo +0 -0
  402. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  403. data/vendor/local/share/man/man1/gapplication.1 +1 -1
  404. data/vendor/local/share/man/man1/gdbus-codegen.1 +8 -3
  405. data/vendor/local/share/man/man1/gdbus.1 +1 -1
  406. data/vendor/local/share/man/man1/gio-querymodules.1 +1 -1
  407. data/vendor/local/share/man/man1/gio.1 +583 -0
  408. data/vendor/local/share/man/man1/glib-compile-resources.1 +19 -1
  409. data/vendor/local/share/man/man1/glib-compile-schemas.1 +6 -1
  410. data/vendor/local/share/man/man1/glib-genmarshal.1 +1 -1
  411. data/vendor/local/share/man/man1/glib-gettextize.1 +1 -1
  412. data/vendor/local/share/man/man1/glib-mkenums.1 +1 -1
  413. data/vendor/local/share/man/man1/gobject-query.1 +1 -1
  414. data/vendor/local/share/man/man1/gresource.1 +1 -1
  415. data/vendor/local/share/man/man1/gsettings.1 +9 -1
  416. data/vendor/local/share/man/man1/gtester-report.1 +1 -1
  417. data/vendor/local/share/man/man1/gtester.1 +1 -1
  418. metadata +12 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9ac3c8d1b66f8cf8a3f5eb0e3602460e772574d5
4
- data.tar.gz: 27a17da86f9a40398fd08947d35f87d7b6e05084
3
+ metadata.gz: 46c63cf3bce70bc92bb1aab164d7041b13bd23d3
4
+ data.tar.gz: 83f9234dfbc59637b7252c5f80d499961af10d96
5
5
  SHA512:
6
- metadata.gz: b8b824907a9b8334c1d90fbd578a9c4b8fa2ec59aa8f7bf7e47af3cb061d15037bfedf251fafeee4081b5e5c10fdbdc2d4a111e6a13340d5a5db9a08527176c1
7
- data.tar.gz: 12e843c349aff37647bc0979fd32a208a336970aef6f32efbb6f7b819327d2dcfcca3335f6bd7085df707a61f280e8f66f2455cb963486d27358bcb9915ab26d
6
+ metadata.gz: 63f5afe99552f77f8b2f66be2d537adebd99713cf3a9672911488071a85fcb6abbb78a911d6874f7fc29828ef2c11d71b3d23762bd68aea274a9f814f5da4876
7
+ data.tar.gz: c80150d5e6fa012fbf71a07503e799c2faa9a00ac998ef75cd9de3b9aead5b256474b2bd5c5c6a6b4cfeb39274a9e4a7a01f6f0d26f5f8f940f53ee600d57d84
data/Rakefile CHANGED
@@ -85,7 +85,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
85
85
  :name => "glib",
86
86
  :download_site => :gnome,
87
87
  :label => "GLib",
88
- :version => "2.48.1",
88
+ :version => "2.50.2",
89
89
  :compression_method => "xz",
90
90
  :windows => {
91
91
  :need_autoreconf => true,
@@ -168,7 +168,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
168
168
  :name => "glib-networking",
169
169
  :download_site => :gnome,
170
170
  :label => "glib-networking",
171
- :version => "2.48.2",
171
+ :version => "2.50.0",
172
172
  :compression_method => "xz",
173
173
  :windows => {
174
174
  :configure_args => [
@@ -41,9 +41,6 @@ have_func("rb_check_array_type", ruby_header)
41
41
  have_func("rb_check_hash_type", ruby_header)
42
42
  have_func("rb_exec_recursive", ruby_header)
43
43
  have_func("rb_errinfo", ruby_header)
44
- have_func("rb_sourcefile", ruby_header)
45
- have_func("rb_sourceline", ruby_header)
46
- have_func("ruby_set_current_source", ruby_header)
47
44
  have_func("rb_thread_call_without_gvl", ruby_header)
48
45
  have_func("ruby_native_thread_p", ruby_header)
49
46
  have_func("rb_thread_call_with_gvl", ruby_header)
@@ -56,10 +56,13 @@ EXPORTS
56
56
  rbgobj_register_type
57
57
  rbgobj_set_signal_func
58
58
  rbgobj_get_signal_func
59
+ rbgobj_set_signal_call_func
60
+ rbgobj_get_signal_call_func
59
61
  rbgobj_add_constants
60
62
  rbgobj_constant_remap
61
63
  rbgobj_signal_wrap
62
64
  g_rclosure_new
65
+ g_rclosure_new_call
63
66
  g_rclosure_attach
64
67
  g_rclosure_set_tag
65
68
  rbgobj_ruby_value_get_type
@@ -854,47 +854,79 @@ rbg_check_hash_type (VALUE object)
854
854
  void
855
855
  rbg_scan_options (VALUE options, ...)
856
856
  {
857
- VALUE original_options = options;
858
- VALUE available_keys;
859
857
  const char *key;
860
- VALUE *value;
858
+ gsize n_keys = 0;
859
+ gsize n_found_keys = 0;
861
860
  va_list args;
861
+ va_list args_copy;
862
862
 
863
- if (NIL_P(options)) {
864
- options = rb_hash_new();
865
- } else {
863
+ if (!NIL_P(options)) {
864
+ VALUE original_options = options;
866
865
  options = rbg_check_hash_type(options);
867
- if (options == original_options) {
868
- options = rb_funcall(options, rb_intern("dup"), 0);
869
- } else if (NIL_P(options)) {
866
+ if (NIL_P(options)) {
870
867
  rb_raise(rb_eArgError,
871
868
  "options must be Hash or nil: %+" PRIsVALUE,
872
869
  original_options);
873
870
  }
874
871
  }
875
872
 
876
- available_keys = rb_ary_new();
877
873
  va_start(args, options);
874
+ va_copy(args_copy, args);
878
875
  key = va_arg(args, const char *);
876
+ n_keys = 0;
877
+ n_found_keys = 0;
879
878
  while (key) {
880
- VALUE rb_key;
881
- value = va_arg(args, VALUE *);
879
+ VALUE *value;
882
880
 
883
- rb_key = ID2SYM(rb_intern(key));
884
- rb_ary_push(available_keys, rb_key);
885
- *value = rb_funcall(options, rb_intern("delete"), 1, rb_key);
881
+ value = va_arg(args, VALUE *);
882
+ if (NIL_P(options)) {
883
+ *value = Qnil;
884
+ } else {
885
+ VALUE rb_key;
886
+ rb_key = ID2SYM(rb_intern(key));
887
+ if (RTEST(rb_funcall(options, rb_intern("key?"), 1, rb_key))) {
888
+ n_found_keys++;
889
+ }
890
+ *value = rb_hash_aref(options, rb_key);
891
+ }
892
+ n_keys++;
886
893
 
887
894
  key = va_arg(args, const char *);
888
895
  }
889
896
  va_end(args);
890
897
 
891
- if (RVAL2CBOOL(rb_funcall(options, rb_intern("empty?"), 0)))
898
+ if (NIL_P(options)) {
899
+ return;
900
+ }
901
+
902
+ if (n_found_keys == RHASH_SIZE(options)) {
892
903
  return;
904
+ }
905
+
906
+ {
907
+ VALUE rb_available_keys;
893
908
 
894
- rb_raise(rb_eArgError,
895
- "unexpected key(s) exist: %s: available keys: %s",
896
- rbg_inspect(rb_funcall(options, rb_intern("keys"), 0)),
897
- rbg_inspect(available_keys));
909
+ rb_available_keys = rb_ary_new();
910
+ key = va_arg(args_copy, const char *);
911
+ while (key) {
912
+ VALUE rb_key;
913
+
914
+ va_arg(args_copy, VALUE *);
915
+ rb_key = ID2SYM(rb_intern(key));
916
+ rb_ary_push(rb_available_keys, rb_key);
917
+ key = va_arg(args_copy, const char *);
918
+ }
919
+ va_end(args_copy);
920
+
921
+ rb_raise(rb_eArgError,
922
+ "unexpected key(s) exist: %+" PRIsVALUE
923
+ ": available keys: %+" PRIsVALUE,
924
+ rb_funcall(rb_funcall(options, rb_intern("keys"), 0),
925
+ rb_intern("-"),
926
+ 1,
927
+ rb_available_keys),
928
+ rb_available_keys);
929
+ }
898
930
  }
899
931
 
900
932
  #if 0
@@ -35,8 +35,8 @@ extern "C" {
35
35
  #endif /* __cplusplus */
36
36
 
37
37
  #define RBGLIB_MAJOR_VERSION 3
38
- #define RBGLIB_MINOR_VERSION 0
39
- #define RBGLIB_MICRO_VERSION 9
38
+ #define RBGLIB_MINOR_VERSION 1
39
+ #define RBGLIB_MICRO_VERSION 0
40
40
 
41
41
  #ifndef RB_ZALLOC
42
42
  # ifdef ZALLOC
@@ -42,7 +42,7 @@ ioc_error(GIOStatus status, GError *err)
42
42
  } else if (status == G_IO_STATUS_NORMAL){
43
43
  /* Do nothing */
44
44
  } else {
45
- rb_raise(rb_eRuntimeError, "An error occured. status = %d\n", status);
45
+ rb_raise(rb_eRuntimeError, "An error occurred. status = %d\n", status);
46
46
  }
47
47
  }
48
48
 
@@ -57,34 +57,57 @@ rg_initialize(int argc, VALUE *argv, VALUE self)
57
57
  return Qnil;
58
58
  }
59
59
 
60
+ typedef struct {
61
+ GMainLoop *loop;
62
+ int state;
63
+ } CheckInterruptData;
64
+
65
+ static VALUE
66
+ check_interrupt_raw(G_GNUC_UNUSED VALUE user_data)
67
+ {
68
+ rb_thread_check_ints();
69
+ return Qnil;
70
+ }
71
+
60
72
  static gboolean
61
- quit_loop(gpointer user_data)
73
+ check_interrupt(gpointer user_data)
62
74
  {
63
- GMainLoop *loop = user_data;
64
- g_main_loop_quit(loop);
65
- return G_SOURCE_REMOVE;
75
+ CheckInterruptData *data = user_data;
76
+
77
+ rb_protect(check_interrupt_raw, Qnil, &(data->state));
78
+ if (data->state == 0) {
79
+ return G_SOURCE_CONTINUE;
80
+ } else {
81
+ g_main_loop_quit(data->loop);
82
+ return G_SOURCE_REMOVE;
83
+ }
66
84
  }
67
85
 
68
86
  static VALUE
69
87
  rg_run(VALUE self)
70
88
  {
71
- GMainLoop *loop;
89
+ CheckInterruptData data;
72
90
  GSource *interrupt_source;
73
91
 
74
- loop = _SELF(self);
92
+ data.loop = _SELF(self);
93
+ data.state = 0;
75
94
 
76
95
  interrupt_source = rbg_interrupt_source_new();
77
96
  g_source_set_callback(interrupt_source,
78
- quit_loop,
79
- loop,
97
+ check_interrupt,
98
+ &data,
80
99
  NULL);
81
100
  g_source_attach(interrupt_source,
82
- g_main_loop_get_context(loop));
83
- g_main_loop_run(loop);
101
+ g_main_loop_get_context(data.loop));
102
+ g_main_loop_run(data.loop);
84
103
  g_source_destroy(interrupt_source);
85
104
  g_source_unref(interrupt_source);
86
105
 
87
- rb_thread_check_ints();
106
+ if (data.state == 0) {
107
+ rb_thread_check_ints();
108
+ } else {
109
+ rb_jump_tag(data.state);
110
+ }
88
111
 
89
112
  return self;
90
113
  }
@@ -24,14 +24,6 @@
24
24
 
25
25
  #include "rbgprivate.h"
26
26
 
27
- #ifndef HAVE_RB_SOURCEFILE
28
- #define rb_sourcefile() (ruby_sourcefile)
29
- #endif
30
-
31
- #ifndef HAVE_RB_SOURCELINE
32
- #define rb_sourceline() (ruby_sourceline)
33
- #endif
34
-
35
27
  #define RG_TARGET_NAMESPACE mLog
36
28
 
37
29
  static VALUE rbglib_log_handler_procs;
@@ -56,15 +48,30 @@ logmessage(GLogLevelFlags level)
56
48
  return "UNKNOWN";
57
49
  }
58
50
 
51
+ static VALUE
52
+ rbg_printerr(VALUE message, G_GNUC_UNUSED VALUE user_data)
53
+ {
54
+ g_printerr("\tfrom %.*s\n",
55
+ (int)RSTRING_LEN(message),
56
+ RSTRING_PTR(message));
57
+ return Qnil;
58
+ }
59
+
59
60
  static void
60
61
  rbglib_log_handler(const gchar *log_domain, GLogLevelFlags log_level, const gchar *message, gpointer user_data)
61
62
  {
62
- if (! log_canceled){
63
- #ifdef HAVE_RUBY_SET_CURRENT_SOURCE
64
- ruby_set_current_source();
65
- #endif
66
- g_printerr("%s: line %d\n", rb_sourcefile(), rb_sourceline());
67
- g_printerr(" %s-%s **:%s\n", log_domain, logmessage(log_level), message);
63
+ if (!log_canceled) {
64
+ g_printerr("%s-%s **: %s\n",
65
+ log_domain, logmessage(log_level), message);
66
+ if (rb_during_gc()) {
67
+ g_printerr("\tfrom %s:%d\n", rb_sourcefile(), rb_sourceline());
68
+ } else {
69
+ VALUE backtrace;
70
+
71
+ backtrace = rb_funcall(rb_mKernel, rb_intern("caller"), 0);
72
+ rb_iterate(rb_each, backtrace,
73
+ rbg_printerr, Qnil);
74
+ }
68
75
  } else {
69
76
  g_log_default_handler(log_domain, log_level, message, user_data);
70
77
  }
@@ -1,6 +1,6 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
2
  /*
3
- * Copyright (C) 2011-2013 Ruby-GNOME2 Project Team
3
+ * Copyright (C) 2011-2016 Ruby-GNOME2 Project Team
4
4
  * Copyright (C) 2002-2006 Ruby-GNOME2 Project
5
5
  * Copyright (C) 2002,2003 Masahiro Sakai
6
6
  *
@@ -38,6 +38,7 @@ struct _GRClosure
38
38
  gint count;
39
39
  GList *objects;
40
40
  GValToRValSignalFunc g2r_func;
41
+ RGClosureCallFunc call_func;
41
42
  gchar tag[TAG_SIZE];
42
43
  };
43
44
 
@@ -70,38 +71,51 @@ rclosure_alive_p(GRClosure *rclosure)
70
71
  static VALUE
71
72
  rclosure_marshal_do(VALUE arg_)
72
73
  {
74
+ VALUE ret = Qnil;
73
75
  struct marshal_arg *arg;
74
- GRClosure* rclosure;
75
- GValue* return_value;
76
- guint n_param_values;
77
- const GValue* param_values;
78
- /* gpointer invocation_hint;*/
79
- /* gpointer marshal_data; */
76
+ GRClosure *rclosure;
77
+ GValue *return_value;
80
78
 
81
- VALUE ret = Qnil;
82
- VALUE args;
83
- GValToRValSignalFunc func;
84
-
85
- arg = (struct marshal_arg*)arg_;
86
- rclosure = (GRClosure *)(arg->closure);
87
- return_value = arg->return_value;
88
- n_param_values = arg->n_param_values;
89
- param_values = arg->param_values;
90
- /* invocation_hint = arg->invocation_hint; */
91
- /* marshal_data = arg->marshal_data; */
92
-
93
- if (rclosure->g2r_func){
94
- func = (GValToRValSignalFunc)rclosure->g2r_func;
95
- } else {
96
- func = (GValToRValSignalFunc)rclosure_default_g2r_func;
97
- }
98
- args = (*func)(n_param_values, param_values);
79
+ arg = (struct marshal_arg *)arg_;
80
+ rclosure = (GRClosure *)(arg->closure);
81
+ return_value = arg->return_value;
99
82
 
100
83
  if (rclosure_alive_p(rclosure)) {
101
- VALUE callback, extra_args;
84
+ guint n_param_values;
85
+ const GValue *param_values;
86
+ /* gpointer invocation_hint;*/
87
+ /* gpointer marshal_data; */
88
+ GValToRValSignalFunc g2r_func;
89
+ VALUE callback;
90
+ VALUE extra_args;
91
+ VALUE args;
92
+
93
+ n_param_values = arg->n_param_values;
94
+ param_values = arg->param_values;
95
+ /* invocation_hint = arg->invocation_hint; */
96
+ /* marshal_data = arg->marshal_data; */
97
+
102
98
  callback = rclosure->callback;
103
99
  extra_args = rclosure->extra_args;
104
100
 
101
+ if (rclosure->call_func) {
102
+ RGClosureCallData data;
103
+ data.return_value = return_value;
104
+ data.n_param_values = n_param_values;
105
+ data.param_values = param_values;
106
+ data.callback = callback;
107
+ data.extra_args = extra_args;
108
+ rclosure->call_func(&data);
109
+ return Qnil;
110
+ }
111
+
112
+ if (rclosure->g2r_func) {
113
+ g2r_func = (GValToRValSignalFunc)rclosure->g2r_func;
114
+ } else {
115
+ g2r_func = (GValToRValSignalFunc)rclosure_default_g2r_func;
116
+ }
117
+ args = (*g2r_func)(n_param_values, param_values);
118
+
105
119
  if (!NIL_P(extra_args)) {
106
120
  args = rb_ary_concat(args, extra_args);
107
121
  }
@@ -210,8 +224,11 @@ gr_closure_holder_free(GRClosure *rclosure)
210
224
  }
211
225
  }
212
226
 
213
- GClosure*
214
- g_rclosure_new(VALUE callback_proc, VALUE extra_args, GValToRValSignalFunc g2r_func)
227
+ static GClosure *
228
+ g_rclosure_new_raw(VALUE callback_proc,
229
+ VALUE extra_args,
230
+ GValToRValSignalFunc g2r_func,
231
+ RGClosureCallFunc call_func)
215
232
  {
216
233
  GRClosure* closure;
217
234
 
@@ -219,6 +236,7 @@ g_rclosure_new(VALUE callback_proc, VALUE extra_args, GValToRValSignalFunc g2r_f
219
236
 
220
237
  closure->count = 1;
221
238
  closure->g2r_func = g2r_func;
239
+ closure->call_func = call_func;
222
240
  closure->objects = NULL;
223
241
  closure->callback = callback_proc;
224
242
  closure->extra_args = extra_args;
@@ -235,6 +253,25 @@ g_rclosure_new(VALUE callback_proc, VALUE extra_args, GValToRValSignalFunc g2r_f
235
253
  return (GClosure*)closure;
236
254
  }
237
255
 
256
+ GClosure *
257
+ g_rclosure_new(VALUE callback_proc,
258
+ VALUE extra_args,
259
+ GValToRValSignalFunc g2r_func)
260
+ {
261
+ return g_rclosure_new_raw(callback_proc, extra_args, g2r_func, NULL);
262
+ }
263
+
264
+ GClosure *
265
+ g_rclosure_new_call(VALUE callback_proc,
266
+ VALUE extra_args,
267
+ RGClosureCallFunc call_func)
268
+ {
269
+ return g_rclosure_new_raw(callback_proc,
270
+ extra_args,
271
+ NULL,
272
+ call_func);
273
+ }
274
+
238
275
  static void
239
276
  rclosure_weak_notify(gpointer data, GObject* where_the_object_was)
240
277
  {
@@ -51,6 +51,28 @@ rbgobj_get_signal_func(guint signal_id)
51
51
  return func;
52
52
  }
53
53
 
54
+ static VALUE signal_call_func_table;
55
+
56
+ void
57
+ rbgobj_set_signal_call_func(VALUE klass,
58
+ const gchar *signal_name,
59
+ RGClosureCallFunc func)
60
+ {
61
+ VALUE obj = Data_Wrap_Struct(rb_cData, NULL, NULL, func);
62
+ guint signal_id = g_signal_lookup(signal_name, CLASS2GTYPE(klass));
63
+ rb_hash_aset(signal_call_func_table, UINT2NUM(signal_id), obj);
64
+ }
65
+
66
+ RGClosureCallFunc
67
+ rbgobj_get_signal_call_func(guint signal_id)
68
+ {
69
+ RGClosureCallFunc func = NULL;
70
+ VALUE func_obj = rb_hash_aref(signal_call_func_table, UINT2NUM(signal_id));
71
+ if (!NIL_P(func_obj))
72
+ Data_Get_Struct(func_obj, void, func);
73
+ return func;
74
+ }
75
+
54
76
  /**********************************************************************/
55
77
 
56
78
  static VALUE eNoSignalError;
@@ -321,8 +343,19 @@ gobj_sig_connect_impl(gboolean after, int argc, VALUE *argv, VALUE self)
321
343
  rb_str_new_cstr(normalized_signal_name),
322
344
  rb_block_proc());
323
345
  }
324
- rclosure = g_rclosure_new(func, rest,
325
- rbgobj_get_signal_func(signal_id));
346
+ {
347
+ RGClosureCallFunc call_func;
348
+ call_func = rbgobj_get_signal_call_func(signal_id);
349
+ if (call_func) {
350
+ rclosure = g_rclosure_new_call(func,
351
+ rest,
352
+ call_func);
353
+ } else {
354
+ rclosure = g_rclosure_new(func,
355
+ rest,
356
+ rbgobj_get_signal_func(signal_id));
357
+ }
358
+ }
326
359
  g_rclosure_attach((GClosure *)rclosure, self);
327
360
  g_object = RVAL2GOBJ(self);
328
361
  tag = g_strdup_printf("%s::%s",
@@ -947,6 +980,9 @@ Init_gobject_gsignal(void)
947
980
  signal_func_table = rb_hash_new();
948
981
  rb_global_variable(&signal_func_table);
949
982
 
983
+ signal_call_func_table = rb_hash_new();
984
+ rb_global_variable(&signal_call_func_table);
985
+
950
986
  rbg_define_method(mMetaInterface, "signal_new", gobj_s_signal_new, -1);
951
987
  rbg_define_method(mMetaInterface, "signals", gobj_s_signals, -1);
952
988
  rbg_define_method(mMetaInterface, "signal", gobj_s_signal, 1);