0s autopkgtest [21:37:47]: starting date and time: 2026-02-03 21:37:47+0000 0s autopkgtest [21:37:47]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [21:37:47]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.awbj1b42/out --timeout-copy=6000 --needs-internet=try --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:pcre2 --apt-upgrade glib2.0 --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=pcre2/10.46-1build1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@sto01-ppc64el-11.secgroup --name adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 --image adt/ubuntu-resolute-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-autopkgtest-workers-ppc64el -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 3s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 46s autopkgtest [21:38:33]: testbed dpkg architecture: ppc64el 46s autopkgtest [21:38:33]: testbed apt version: 3.1.14 47s autopkgtest [21:38:34]: @@@@@@@@@@@@@@@@@@@@ test bed setup 47s autopkgtest [21:38:34]: testbed release detected to be: None 48s autopkgtest [21:38:35]: updating testbed package index (apt update) 48s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 48s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 48s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 48s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 48s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 48s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 48s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 48s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 48s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 48s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 49s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 49s Fetched 3201 kB in 1s (3282 kB/s) 50s Reading package lists... 50s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 50s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 50s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 50s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 51s Reading package lists... 51s Reading package lists... 51s Building dependency tree... 51s Reading state information... 52s Calculating upgrade... 52s The following packages will be upgraded: 52s libpcre2-8-0 52s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 52s Need to get 325 kB of archives. 52s After this operation, 0 B of additional disk space will be used. 52s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 52s dpkg-preconfigure: unable to re-open stdin: No such file or directory 52s Fetched 325 kB in 0s (8086 kB/s) 52s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 52s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 52s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 52s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 52s Processing triggers for libselinux1:ppc64el (3.9-4) ... 52s Processing triggers for libc-bin (2.42-2ubuntu4) ... 53s autopkgtest [21:38:40]: upgrading testbed (apt dist-upgrade and autopurge) 53s Reading package lists... 53s Building dependency tree... 53s Reading state information... 53s Calculating upgrade... 53s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 53s Reading package lists... 54s Building dependency tree... 54s Reading state information... 54s Solving dependencies... 54s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 56s autopkgtest [21:38:43]: testbed running kernel: Linux 6.18.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Jan 12 16:45:54 UTC 2026 56s autopkgtest [21:38:43]: @@@@@@@@@@@@@@@@@@@@ apt-source glib2.0 65s Get:1 http://ftpmaster.internal/ubuntu resolute/main glib2.0 2.86.3-4 (dsc) [4685 B] 65s Get:2 http://ftpmaster.internal/ubuntu resolute/main glib2.0 2.86.3-4 (tar) [661 kB] 65s Get:3 http://ftpmaster.internal/ubuntu resolute/main glib2.0 2.86.3-4 (tar) [5675 kB] 65s Get:4 http://ftpmaster.internal/ubuntu resolute/main glib2.0 2.86.3-4 (diff) [141 kB] 65s gpgv: Signature made Thu Jan 1 13:00:10 2026 UTC 65s gpgv: using RSA key 4D0BE12F0E4776D8AACE9696E66C775AEBFE6C7D 65s gpgv: Can't check signature: No public key 65s dpkg-source: warning: cannot verify inline signature for ./glib2.0_2.86.3-4.dsc: no acceptable signature found 66s autopkgtest [21:38:53]: testing package glib2.0 version 2.86.3-4 71s autopkgtest [21:38:58]: build not needed 79s autopkgtest [21:39:06]: test build: preparing testbed 80s Reading package lists... 80s Building dependency tree... 80s Reading state information... 80s Solving dependencies... 80s The following NEW packages will be installed: 80s build-essential cpp cpp-15 cpp-15-powerpc64le-linux-gnu 80s cpp-powerpc64le-linux-gnu g++ g++-15 g++-15-powerpc64le-linux-gnu 80s g++-powerpc64le-linux-gnu gcc gcc-15 gcc-15-powerpc64le-linux-gnu 80s gcc-powerpc64le-linux-gnu libasan8 libblkid-dev libc-dev-bin libc6-dev 80s libcc1-0 libcrypt-dev libffi-dev libgcc-15-dev libgio-2.0-dev libgomp1 80s libisl23 libitm1 liblsan0 libmount-dev libmpc3 libpcre2-16-0 libpcre2-32-0 80s libpcre2-dev libpcre2-posix3 libpkgconf3 libquadmath0 libselinux-dev 80s libsepol-dev libstdc++-15-dev libsysprof-capture-4-dev libtsan2 libubsan1 80s linux-libc-dev pkgconf pkgconf-bin rpcsvc-proto uuid-dev zlib1g-dev 80s 0 upgraded, 46 newly installed, 0 to remove and 0 not upgraded. 80s Need to get 71.6 MB of archives. 80s After this operation, 268 MB of additional disk space will be used. 80s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libc-dev-bin ppc64el 2.42-2ubuntu4 [23.9 kB] 80s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el linux-libc-dev ppc64el 6.18.0-9.9 [1847 kB] 80s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt-dev ppc64el 1:4.5.1-1 [162 kB] 80s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el rpcsvc-proto ppc64el 1.4.3-1build1 [84.2 kB] 80s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el libc6-dev ppc64el 2.42-2ubuntu4 [2080 kB] 80s Get:6 http://ftpmaster.internal/ubuntu resolute/main ppc64el libisl23 ppc64el 0.27-1build1 [893 kB] 80s Get:7 http://ftpmaster.internal/ubuntu resolute/main ppc64el libmpc3 ppc64el 1.3.1-2 [62.5 kB] 80s Get:8 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [11.4 MB] 81s Get:9 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-15 ppc64el 15.2.0-12ubuntu1 [1038 B] 81s Get:10 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [5746 B] 81s Get:11 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp ppc64el 4:15.2.0-4ubuntu1 [22.4 kB] 81s Get:12 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcc1-0 ppc64el 15.2.0-12ubuntu1 [49.0 kB] 81s Get:13 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgomp1 ppc64el 15.2.0-12ubuntu1 [169 kB] 81s Get:14 http://ftpmaster.internal/ubuntu resolute/main ppc64el libitm1 ppc64el 15.2.0-12ubuntu1 [32.2 kB] 81s Get:15 http://ftpmaster.internal/ubuntu resolute/main ppc64el libasan8 ppc64el 15.2.0-12ubuntu1 [3006 kB] 81s Get:16 http://ftpmaster.internal/ubuntu resolute/main ppc64el liblsan0 ppc64el 15.2.0-12ubuntu1 [1374 kB] 81s Get:17 http://ftpmaster.internal/ubuntu resolute/main ppc64el libtsan2 ppc64el 15.2.0-12ubuntu1 [2729 kB] 81s Get:18 http://ftpmaster.internal/ubuntu resolute/main ppc64el libubsan1 ppc64el 15.2.0-12ubuntu1 [1231 kB] 81s Get:19 http://ftpmaster.internal/ubuntu resolute/main ppc64el libquadmath0 ppc64el 15.2.0-12ubuntu1 [160 kB] 81s Get:20 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgcc-15-dev ppc64el 15.2.0-12ubuntu1 [1670 kB] 81s Get:21 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [22.4 MB] 82s Get:22 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-15 ppc64el 15.2.0-12ubuntu1 [530 kB] 82s Get:23 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [1220 B] 82s Get:24 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc ppc64el 4:15.2.0-4ubuntu1 [5032 B] 82s Get:25 http://ftpmaster.internal/ubuntu resolute/main ppc64el libstdc++-15-dev ppc64el 15.2.0-12ubuntu1 [2747 kB] 82s Get:26 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [13.0 MB] 82s Get:27 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-15 ppc64el 15.2.0-12ubuntu1 [25.3 kB] 82s Get:28 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [970 B] 82s Get:29 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++ ppc64el 4:15.2.0-4ubuntu1 [1092 B] 82s Get:30 http://ftpmaster.internal/ubuntu resolute/main ppc64el build-essential ppc64el 12.12ubuntu2 [5256 B] 82s Get:31 http://ftpmaster.internal/ubuntu resolute/main ppc64el libffi-dev ppc64el 3.5.2-3 [72.7 kB] 82s Get:32 http://ftpmaster.internal/ubuntu resolute/main ppc64el uuid-dev ppc64el 2.41.2-4ubuntu2 [59.9 kB] 82s Get:33 http://ftpmaster.internal/ubuntu resolute/main ppc64el libblkid-dev ppc64el 2.41.2-4ubuntu2 [293 kB] 82s Get:34 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsepol-dev ppc64el 3.9-2 [516 kB] 82s Get:35 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-16-0 ppc64el 10.46-1build1 [292 kB] 82s Get:36 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-32-0 ppc64el 10.46-1build1 [275 kB] 82s Get:37 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-posix3 ppc64el 10.46-1build1 [7338 B] 82s Get:38 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-dev ppc64el 10.46-1build1 [937 kB] 82s Get:39 http://ftpmaster.internal/ubuntu resolute/main ppc64el libselinux-dev ppc64el 3.9-4 [210 kB] 82s Get:40 http://ftpmaster.internal/ubuntu resolute/main ppc64el libmount-dev ppc64el 2.41.2-4ubuntu2 [37.6 kB] 82s Get:41 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsysprof-capture-4-dev ppc64el 49.0-5 [62.0 kB] 82s Get:42 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpkgconf3 ppc64el 1.8.1-4build1 [37.9 kB] 82s Get:43 http://ftpmaster.internal/ubuntu resolute/main ppc64el pkgconf-bin ppc64el 1.8.1-4build1 [22.7 kB] 82s Get:44 http://ftpmaster.internal/ubuntu resolute/main ppc64el pkgconf ppc64el 1.8.1-4build1 [16.8 kB] 82s Get:45 http://ftpmaster.internal/ubuntu resolute/main ppc64el zlib1g-dev ppc64el 1:1.3.dfsg+really1.3.1-1ubuntu2 [903 kB] 82s Get:46 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgio-2.0-dev ppc64el 2.86.3-4 [2206 kB] 83s Fetched 71.6 MB in 3s (27.5 MB/s) 83s Selecting previously unselected package libc-dev-bin. 83s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 83s Preparing to unpack .../00-libc-dev-bin_2.42-2ubuntu4_ppc64el.deb ... 83s Unpacking libc-dev-bin (2.42-2ubuntu4) ... 83s Selecting previously unselected package linux-libc-dev:ppc64el. 83s Preparing to unpack .../01-linux-libc-dev_6.18.0-9.9_ppc64el.deb ... 83s Unpacking linux-libc-dev:ppc64el (6.18.0-9.9) ... 83s Selecting previously unselected package libcrypt-dev:ppc64el. 83s Preparing to unpack .../02-libcrypt-dev_1%3a4.5.1-1_ppc64el.deb ... 83s Unpacking libcrypt-dev:ppc64el (1:4.5.1-1) ... 83s Selecting previously unselected package rpcsvc-proto. 83s Preparing to unpack .../03-rpcsvc-proto_1.4.3-1build1_ppc64el.deb ... 83s Unpacking rpcsvc-proto (1.4.3-1build1) ... 83s Selecting previously unselected package libc6-dev:ppc64el. 83s Preparing to unpack .../04-libc6-dev_2.42-2ubuntu4_ppc64el.deb ... 83s Unpacking libc6-dev:ppc64el (2.42-2ubuntu4) ... 83s Selecting previously unselected package libisl23:ppc64el. 83s Preparing to unpack .../05-libisl23_0.27-1build1_ppc64el.deb ... 83s Unpacking libisl23:ppc64el (0.27-1build1) ... 83s Selecting previously unselected package libmpc3:ppc64el. 83s Preparing to unpack .../06-libmpc3_1.3.1-2_ppc64el.deb ... 83s Unpacking libmpc3:ppc64el (1.3.1-2) ... 83s Selecting previously unselected package cpp-15-powerpc64le-linux-gnu. 83s Preparing to unpack .../07-cpp-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking cpp-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package cpp-15. 83s Preparing to unpack .../08-cpp-15_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking cpp-15 (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package cpp-powerpc64le-linux-gnu. 83s Preparing to unpack .../09-cpp-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 83s Unpacking cpp-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 83s Selecting previously unselected package cpp. 83s Preparing to unpack .../10-cpp_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 83s Unpacking cpp (4:15.2.0-4ubuntu1) ... 83s Selecting previously unselected package libcc1-0:ppc64el. 83s Preparing to unpack .../11-libcc1-0_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking libcc1-0:ppc64el (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package libgomp1:ppc64el. 83s Preparing to unpack .../12-libgomp1_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking libgomp1:ppc64el (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package libitm1:ppc64el. 83s Preparing to unpack .../13-libitm1_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking libitm1:ppc64el (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package libasan8:ppc64el. 83s Preparing to unpack .../14-libasan8_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking libasan8:ppc64el (15.2.0-12ubuntu1) ... 83s Selecting previously unselected package liblsan0:ppc64el. 83s Preparing to unpack .../15-liblsan0_15.2.0-12ubuntu1_ppc64el.deb ... 83s Unpacking liblsan0:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package libtsan2:ppc64el. 84s Preparing to unpack .../16-libtsan2_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking libtsan2:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package libubsan1:ppc64el. 84s Preparing to unpack .../17-libubsan1_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking libubsan1:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package libquadmath0:ppc64el. 84s Preparing to unpack .../18-libquadmath0_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking libquadmath0:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package libgcc-15-dev:ppc64el. 84s Preparing to unpack .../19-libgcc-15-dev_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking libgcc-15-dev:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package gcc-15-powerpc64le-linux-gnu. 84s Preparing to unpack .../20-gcc-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking gcc-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package gcc-15. 84s Preparing to unpack .../21-gcc-15_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking gcc-15 (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package gcc-powerpc64le-linux-gnu. 84s Preparing to unpack .../22-gcc-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 84s Unpacking gcc-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 84s Selecting previously unselected package gcc. 84s Preparing to unpack .../23-gcc_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 84s Unpacking gcc (4:15.2.0-4ubuntu1) ... 84s Selecting previously unselected package libstdc++-15-dev:ppc64el. 84s Preparing to unpack .../24-libstdc++-15-dev_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking libstdc++-15-dev:ppc64el (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package g++-15-powerpc64le-linux-gnu. 84s Preparing to unpack .../25-g++-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking g++-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package g++-15. 84s Preparing to unpack .../26-g++-15_15.2.0-12ubuntu1_ppc64el.deb ... 84s Unpacking g++-15 (15.2.0-12ubuntu1) ... 84s Selecting previously unselected package g++-powerpc64le-linux-gnu. 84s Preparing to unpack .../27-g++-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 84s Unpacking g++-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 84s Selecting previously unselected package g++. 84s Preparing to unpack .../28-g++_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 84s Unpacking g++ (4:15.2.0-4ubuntu1) ... 84s Selecting previously unselected package build-essential. 84s Preparing to unpack .../29-build-essential_12.12ubuntu2_ppc64el.deb ... 84s Unpacking build-essential (12.12ubuntu2) ... 84s Selecting previously unselected package libffi-dev:ppc64el. 84s Preparing to unpack .../30-libffi-dev_3.5.2-3_ppc64el.deb ... 84s Unpacking libffi-dev:ppc64el (3.5.2-3) ... 84s Selecting previously unselected package uuid-dev:ppc64el. 84s Preparing to unpack .../31-uuid-dev_2.41.2-4ubuntu2_ppc64el.deb ... 84s Unpacking uuid-dev:ppc64el (2.41.2-4ubuntu2) ... 84s Selecting previously unselected package libblkid-dev:ppc64el. 84s Preparing to unpack .../32-libblkid-dev_2.41.2-4ubuntu2_ppc64el.deb ... 84s Unpacking libblkid-dev:ppc64el (2.41.2-4ubuntu2) ... 85s Selecting previously unselected package libsepol-dev:ppc64el. 85s Preparing to unpack .../33-libsepol-dev_3.9-2_ppc64el.deb ... 85s Unpacking libsepol-dev:ppc64el (3.9-2) ... 85s Selecting previously unselected package libpcre2-16-0:ppc64el. 85s Preparing to unpack .../34-libpcre2-16-0_10.46-1build1_ppc64el.deb ... 85s Unpacking libpcre2-16-0:ppc64el (10.46-1build1) ... 85s Selecting previously unselected package libpcre2-32-0:ppc64el. 85s Preparing to unpack .../35-libpcre2-32-0_10.46-1build1_ppc64el.deb ... 85s Unpacking libpcre2-32-0:ppc64el (10.46-1build1) ... 85s Selecting previously unselected package libpcre2-posix3:ppc64el. 85s Preparing to unpack .../36-libpcre2-posix3_10.46-1build1_ppc64el.deb ... 85s Unpacking libpcre2-posix3:ppc64el (10.46-1build1) ... 85s Selecting previously unselected package libpcre2-dev:ppc64el. 85s Preparing to unpack .../37-libpcre2-dev_10.46-1build1_ppc64el.deb ... 85s Unpacking libpcre2-dev:ppc64el (10.46-1build1) ... 85s Selecting previously unselected package libselinux-dev:ppc64el. 85s Preparing to unpack .../38-libselinux-dev_3.9-4_ppc64el.deb ... 85s Unpacking libselinux-dev:ppc64el (3.9-4) ... 85s Selecting previously unselected package libmount-dev:ppc64el. 85s Preparing to unpack .../39-libmount-dev_2.41.2-4ubuntu2_ppc64el.deb ... 85s Unpacking libmount-dev:ppc64el (2.41.2-4ubuntu2) ... 85s Selecting previously unselected package libsysprof-capture-4-dev:ppc64el. 85s Preparing to unpack .../40-libsysprof-capture-4-dev_49.0-5_ppc64el.deb ... 85s Unpacking libsysprof-capture-4-dev:ppc64el (49.0-5) ... 85s Selecting previously unselected package libpkgconf3:ppc64el. 85s Preparing to unpack .../41-libpkgconf3_1.8.1-4build1_ppc64el.deb ... 85s Unpacking libpkgconf3:ppc64el (1.8.1-4build1) ... 85s Selecting previously unselected package pkgconf-bin. 85s Preparing to unpack .../42-pkgconf-bin_1.8.1-4build1_ppc64el.deb ... 85s Unpacking pkgconf-bin (1.8.1-4build1) ... 85s Selecting previously unselected package pkgconf:ppc64el. 85s Preparing to unpack .../43-pkgconf_1.8.1-4build1_ppc64el.deb ... 85s Unpacking pkgconf:ppc64el (1.8.1-4build1) ... 85s Selecting previously unselected package zlib1g-dev:ppc64el. 85s Preparing to unpack .../44-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu2_ppc64el.deb ... 85s Unpacking zlib1g-dev:ppc64el (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 85s Selecting previously unselected package libgio-2.0-dev:ppc64el. 85s Preparing to unpack .../45-libgio-2.0-dev_2.86.3-4_ppc64el.deb ... 85s Unpacking libgio-2.0-dev:ppc64el (2.86.3-4) ... 85s Setting up linux-libc-dev:ppc64el (6.18.0-9.9) ... 85s Setting up libgomp1:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libffi-dev:ppc64el (3.5.2-3) ... 85s Setting up libpcre2-16-0:ppc64el (10.46-1build1) ... 85s Setting up libsysprof-capture-4-dev:ppc64el (49.0-5) ... 85s Setting up libpcre2-32-0:ppc64el (10.46-1build1) ... 85s Setting up libpkgconf3:ppc64el (1.8.1-4build1) ... 85s Setting up rpcsvc-proto (1.4.3-1build1) ... 85s Setting up libquadmath0:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libmpc3:ppc64el (1.3.1-2) ... 85s Setting up libsepol-dev:ppc64el (3.9-2) ... 85s Setting up pkgconf-bin (1.8.1-4build1) ... 85s Setting up libubsan1:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libpcre2-posix3:ppc64el (10.46-1build1) ... 85s Setting up libcrypt-dev:ppc64el (1:4.5.1-1) ... 85s Setting up libasan8:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libtsan2:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libisl23:ppc64el (0.27-1build1) ... 85s Setting up libc-dev-bin (2.42-2ubuntu4) ... 85s Setting up libcc1-0:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up liblsan0:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libitm1:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up libgcc-15-dev:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up pkgconf:ppc64el (1.8.1-4build1) ... 85s Setting up cpp-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 85s Setting up cpp-15 (15.2.0-12ubuntu1) ... 85s Setting up libc6-dev:ppc64el (2.42-2ubuntu4) ... 85s Setting up cpp-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 85s Setting up libpcre2-dev:ppc64el (10.46-1build1) ... 85s Setting up gcc-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 85s Setting up gcc-15 (15.2.0-12ubuntu1) ... 85s Setting up libstdc++-15-dev:ppc64el (15.2.0-12ubuntu1) ... 85s Setting up gcc-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 85s Setting up uuid-dev:ppc64el (2.41.2-4ubuntu2) ... 85s Setting up zlib1g-dev:ppc64el (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 85s Setting up cpp (4:15.2.0-4ubuntu1) ... 85s Setting up libselinux-dev:ppc64el (3.9-4) ... 85s Setting up libblkid-dev:ppc64el (2.41.2-4ubuntu2) ... 85s Setting up g++-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 85s Setting up gcc (4:15.2.0-4ubuntu1) ... 85s Setting up g++-15 (15.2.0-12ubuntu1) ... 85s Setting up libmount-dev:ppc64el (2.41.2-4ubuntu2) ... 85s Setting up g++-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 85s Setting up libgio-2.0-dev:ppc64el (2.86.3-4) ... 85s Setting up g++ (4:15.2.0-4ubuntu1) ... 85s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 85s Setting up build-essential (12.12ubuntu2) ... 85s Processing triggers for libc-bin (2.42-2ubuntu4) ... 85s Processing triggers for man-db (2.13.1-1) ... 86s Processing triggers for libglib2.0-0t64:ppc64el (2.86.3-4) ... 86s No schema files found: doing nothing. 86s Processing triggers for install-info (7.2-5) ... 87s autopkgtest [21:39:14]: test build: [----------------------- 88s + mode=dynamic 88s + getopt -o --long static -n debian/tests/build -- 88s + getopt_temp= -- 88s + eval set -- -- 88s + set -- -- 88s + true 88s + shift 88s + break 88s + mktemp -d 88s + WORKDIR=/tmp/tmp.9Ihkp1pPGE 88s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 88s + cd /tmp/tmp.9Ihkp1pPGE 88s + [ -n ] 88s + CROSS_COMPILE= 88s + cat 88s + cat 88s + cat 88s + cat 88s + cat 88s + cat 88s + cflags= 88s + pcflags= 88s + packages=glib-2.0 88s + pkg-config --cflags --libs glib-2.0 88s + gcc -o glib-dynamic glib.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 88s + echo build (glib, dynamic): OK 88s + [ -x glib-dynamic ] 88s + foo=bar ./glib-dynamic 88s build (glib, dynamic): OK 88s + echo run (glib, dynamic): OK 88s + cflags= 88s + pcflags= 88s + packages=gobject-2.0 88s + pkg-config --cflags --libs gobject-2.0 88s run (glib, dynamic): OK 88s + gcc -o gobject-dynamic gobject.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 88s + echo build (gobject, dynamic): OK 88s + [ -x gobject-dynamic ] 88s + foo=bar ./gobject-dynamic 88s build (gobject, dynamic): OK 88s + echo run (gobject, dynamic): OK 88s + cflags= 88s + pcflags= 88s + packages=gio-2.0 88s run (gobject, dynamic): OK 88s + pkg-config --cflags --libs gio-2.0 88s + gcc -o gio-dynamic gio.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread -lgio-2.0 -lgobject-2.0 -lglib-2.0 88s + echo build (gio, dynamic): OK 88s + [ -x gio-dynamic ] 88s + foo=bar ./gio-dynamic 88s build (gio, dynamic): OK 88s + echo run (gio, dynamic): OK 88s + cflags= 88s + pcflags= 88s + packages=gio-unix-2.0 88s + pkg-config --cflags --libs gio-unix-2.0 88s run (gio, dynamic): OK 88s + gcc -o gio-unix-dynamic gio-unix.c -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread -lgio-2.0 -lgobject-2.0 -lglib-2.0 88s + echo build (gio-unix, dynamic): OK 88s + [ -x gio-unix-dynamic ] 88s + foo=bar ./gio-unix-dynamic 88s build (gio-unix, dynamic): OK 88s + echo run (gio-unix, dynamic): OK 88s + cflags= 88s + pcflags= 88s + packages=gmodule-2.0 88s run (gio-unix, dynamic): OK 88s + pkg-config --cflags --libs gmodule-2.0 88s + gcc -o gmodule-dynamic gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0 88s + echo build (gmodule, dynamic): OK 88s + [ -x gmodule-dynamic ] 88s + foo=bar ./gmodule-dynamic 88s build (gmodule, dynamic): OK 88s + echo run (gmodule, dynamic): OK 88s + cflags= 88s + pcflags= 88s + packages=gthread-2.0 88s run (gmodule, dynamic): OK 88s + pkg-config --cflags --libs gthread-2.0 88s + gcc -o gthread-dynamic gthread.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 88s + echo build (gthread, dynamic): OK 88s + [ -x gthread-dynamic ] 88s + foo=bar ./gthread-dynamic 88s build (gthread, dynamic): OK 88s + echo run (gthread, dynamic): OK 88s + rm -rf /tmp/tmp.9Ihkp1pPGE 88s run (gthread, dynamic): OK 89s autopkgtest [21:39:16]: test build: -----------------------] 89s autopkgtest [21:39:16]: test build: - - - - - - - - - - results - - - - - - - - - - 89s build PASS (superficial) 89s autopkgtest [21:39:16]: test build-static: preparing testbed 90s Reading package lists... 90s Building dependency tree... 90s Reading state information... 90s Solving dependencies... 90s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 91s autopkgtest [21:39:18]: test build-static: [----------------------- 91s + mode=dynamic 91s + getopt -o --long static -n debian/tests/build -- --static 91s + getopt_temp= --static -- 91s + eval set -- --static -- 91s + set -- --static -- 91s + true 91s + mode=static 91s + shift 91s + continue 91s + true 91s + shift 91s + break 91s + mktemp -d 91s + WORKDIR=/tmp/tmp.Dj5Bre1CTX 91s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 91s + cd /tmp/tmp.Dj5Bre1CTX 91s + [ -n ] 91s + CROSS_COMPILE= 91s + cat 91s + cat 91s + cat 91s + cat 91s + cat 91s + cat 91s + cflags= 91s + pcflags= 91s + packages=glib-2.0 91s + cflags=-static 91s + pcflags=--static 91s + pkg-config --static --cflags --libs glib-2.0 91s + gcc -static -o glib-static glib.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 91s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s build (glib, static): OK 91s run (glib, static): OK 91s + echo build (glib, static): OK 91s + [ -x glib-static ] 91s + foo=bar ./glib-static 91s + echo run (glib, static): OK 91s + cflags= 91s + pcflags= 91s + packages=gobject-2.0 91s + cflags=-static 91s + pcflags=--static 91s + pkg-config --static --cflags --libs gobject-2.0 91s + gcc -static -o gobject-static gobject.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 -lffi 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 91s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s build (gobject, static): OK 91s + echo build (gobject, static): OK 91s + [ -x gobject-static ] 91s + foo=bar ./gobject-static 91s run (gobject, static): OK 91s + echo run (gobject, static): OK 91s + cflags= 91s + pcflags= 91s + packages=gio-2.0 91s + cflags=-static 91s + pcflags=--static 91s + continue 91s + cflags= 91s + pcflags= 91s + packages=gio-unix-2.0 91s + cflags=-static 91s + pcflags=--static 91s + continue 91s + cflags= 91s + pcflags= 91s + packages=gmodule-2.0 91s + cflags=-static 91s + pcflags=--static 91s + pkg-config --static --cflags --libs gmodule-2.0 91s + gcc -static -o gmodule-static gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libgmodule-2.0.a(gmodule.c.o): in function `g_module_open_full': 91s (.text+0x944): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 91s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s build (gmodule, static): OK 91s run (gmodule, static): OK 91s + echo build (gmodule, static): OK 91s + [ -x gmodule-static ] 91s + foo=bar ./gmodule-static 91s + echo run (gmodule, static): OK 91s + cflags= 91s + pcflags= 91s + packages=gthread-2.0 91s + cflags=-static 91s + pcflags=--static 91s + pkg-config --static --cflags --libs gthread-2.0 91s + gcc -static -o gthread-static gthread.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 91s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 91s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 92s build (gthread, static): OK 92s + echo build (gthread, static): OK 92s + [ -x gthread-static ] 92s + foo=bar ./gthread-static 92s + echo run (gthread, static): OK 92s + rm -rf /tmp/tmp.Dj5Bre1CTX 92s run (gthread, static): OK 92s autopkgtest [21:39:19]: test build-static: -----------------------] 92s autopkgtest [21:39:19]: test build-static: - - - - - - - - - - results - - - - - - - - - - 92s build-static PASS (superficial) 93s autopkgtest [21:39:20]: test girepository-tools: preparing testbed 111s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 153s autopkgtest [21:40:20]: testbed dpkg architecture: ppc64el 153s autopkgtest [21:40:20]: testbed apt version: 3.1.14 153s autopkgtest [21:40:20]: @@@@@@@@@@@@@@@@@@@@ test bed setup 153s autopkgtest [21:40:20]: testbed release detected to be: resolute 154s autopkgtest [21:40:21]: updating testbed package index (apt update) 154s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 154s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 154s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 154s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 154s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 155s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 155s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 155s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 155s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 155s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 155s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 155s Fetched 3201 kB in 1s (3781 kB/s) 156s Reading package lists... 156s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 156s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 156s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 156s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 157s Reading package lists... 157s Reading package lists... 157s Building dependency tree... 157s Reading state information... 157s Calculating upgrade... 158s The following packages will be upgraded: 158s libpcre2-8-0 158s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 158s Need to get 325 kB of archives. 158s After this operation, 0 B of additional disk space will be used. 158s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 158s dpkg-preconfigure: unable to re-open stdin: No such file or directory 158s Fetched 325 kB in 0s (15.1 MB/s) 158s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 158s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 158s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 158s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 158s Processing triggers for libselinux1:ppc64el (3.9-4) ... 158s Processing triggers for libc-bin (2.42-2ubuntu4) ... 158s autopkgtest [21:40:25]: upgrading testbed (apt dist-upgrade and autopurge) 159s Reading package lists... 159s Building dependency tree... 159s Reading state information... 159s Calculating upgrade... 159s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 159s Reading package lists... 159s Building dependency tree... 159s Reading state information... 159s Solving dependencies... 159s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 162s Reading package lists... 162s Building dependency tree... 162s Reading state information... 162s Solving dependencies... 162s The following NEW packages will be installed: 162s gir1.2-glib-2.0-dev girepository-tools native-architecture 162s 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 162s Need to get 1003 kB of archives. 162s After this operation, 12.5 MB of additional disk space will be used. 162s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el gir1.2-glib-2.0-dev ppc64el 2.86.3-4 [865 kB] 162s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el native-architecture all 0.2.6build1 [2256 B] 162s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el girepository-tools ppc64el 2.86.3-4 [135 kB] 162s Fetched 1003 kB in 0s (11.7 MB/s) 162s Selecting previously unselected package gir1.2-glib-2.0-dev:ppc64el. 162s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 162s Preparing to unpack .../gir1.2-glib-2.0-dev_2.86.3-4_ppc64el.deb ... 162s Unpacking gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 162s Selecting previously unselected package native-architecture. 162s Preparing to unpack .../native-architecture_0.2.6build1_all.deb ... 162s Unpacking native-architecture (0.2.6build1) ... 162s Selecting previously unselected package girepository-tools:ppc64el. 162s Preparing to unpack .../girepository-tools_2.86.3-4_ppc64el.deb ... 162s Unpacking girepository-tools:ppc64el (2.86.3-4) ... 162s Setting up native-architecture (0.2.6build1) ... 162s Setting up gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 162s Setting up girepository-tools:ppc64el (2.86.3-4) ... 162s Processing triggers for man-db (2.13.1-1) ... 166s autopkgtest [21:40:33]: test girepository-tools: [----------------------- 166s + cd /tmp/autopkgtest.lRjasG/autopkgtest_tmp 166s + dpkg-architecture -qDEB_HOST_GNU_TYPE 166s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 166s + DEB_HOST_GNU_TYPE=powerpc64le-linux-gnu 166s + dpkg-architecture -qDEB_HOST_MULTIARCH 166s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 166s + DEB_HOST_MULTIARCH=powerpc64le-linux-gnu 166s + powerpc64le-linux-gnu-gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 166s + powerpc64le-linux-gnu-gi-compile-repository -o GLib.typelib /usr/lib/powerpc64le-linux-gnu/gir-1.0/GLib-2.0.gir 166s typelib: GLib-2.0 167s + powerpc64le-linux-gnu-gi-decompile-typelib -o GLib.gir GLib.typelib 167s autopkgtest [21:40:34]: test girepository-tools: -----------------------] 167s autopkgtest [21:40:34]: test girepository-tools: - - - - - - - - - - results - - - - - - - - - - 167s girepository-tools PASS (superficial) 168s autopkgtest [21:40:35]: test libgio-2.0-dev-bin: preparing testbed 175s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 220s autopkgtest [21:41:27]: testbed dpkg architecture: ppc64el 221s autopkgtest [21:41:28]: testbed apt version: 3.1.14 221s autopkgtest [21:41:28]: @@@@@@@@@@@@@@@@@@@@ test bed setup 221s autopkgtest [21:41:28]: testbed release detected to be: resolute 222s autopkgtest [21:41:29]: updating testbed package index (apt update) 222s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 222s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 222s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 222s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 222s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 222s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 222s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 222s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 222s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 222s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 223s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 223s Fetched 3201 kB in 1s (3380 kB/s) 223s Reading package lists... 224s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 224s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 224s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 224s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 225s Reading package lists... 225s Reading package lists... 225s Building dependency tree... 225s Reading state information... 225s Calculating upgrade... 225s The following packages will be upgraded: 225s libpcre2-8-0 225s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 225s Need to get 325 kB of archives. 225s After this operation, 0 B of additional disk space will be used. 225s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 226s dpkg-preconfigure: unable to re-open stdin: No such file or directory 226s Fetched 325 kB in 0s (24.6 MB/s) 226s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 226s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 226s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 226s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 226s Processing triggers for libselinux1:ppc64el (3.9-4) ... 226s Processing triggers for libc-bin (2.42-2ubuntu4) ... 226s autopkgtest [21:41:33]: upgrading testbed (apt dist-upgrade and autopurge) 226s Reading package lists... 227s Building dependency tree... 227s Reading state information... 227s Calculating upgrade... 227s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 227s Reading package lists... 227s Building dependency tree... 227s Reading state information... 227s Solving dependencies... 227s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 229s Reading package lists... 230s Building dependency tree... 230s Reading state information... 230s Solving dependencies... 230s The following NEW packages will be installed: 230s libgio-2.0-dev-bin 230s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 230s Need to get 131 kB of archives. 230s After this operation, 822 kB of additional disk space will be used. 230s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgio-2.0-dev-bin ppc64el 2.86.3-4 [131 kB] 230s Fetched 131 kB in 0s (6772 kB/s) 230s Selecting previously unselected package libgio-2.0-dev-bin. 230s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 230s Preparing to unpack .../libgio-2.0-dev-bin_2.86.3-4_ppc64el.deb ... 230s Unpacking libgio-2.0-dev-bin (2.86.3-4) ... 230s Setting up libgio-2.0-dev-bin (2.86.3-4) ... 230s Processing triggers for man-db (2.13.1-1) ... 234s autopkgtest [21:41:41]: test libgio-2.0-dev-bin: [----------------------- 234s + gdbus-codegen --help 234s usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 234s [--c-namespace NAMESPACE] [--c-generate-object-manager] 234s [--c-generate-autocleanup {none,objects,all}] 234s [--generate-docbook OUTFILES] [--generate-md OUTFILES] 234s [--generate-rst OUTFILES] [--pragma-once] 234s [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 234s [--glib-min-required VERSION] 234s [--glib-max-allowed VERSION] 234s [--symbol-decorator SYMBOL_DECORATOR] 234s [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 234s [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 234s [--generate-c-code OUTFILES | --header | --body | 234s --interface-info-header | --interface-info-body] 234s [--output FILE | --output-directory OUTDIR] 234s FILE [FILE ...] 234s 234s D-Bus code and documentation generator 234s 234s positional arguments: 234s FILE D-Bus introspection XML file 234s 234s options: 234s -h, --help show this help message and exit 234s --interface-prefix PREFIX 234s String to strip from D-Bus interface names for code 234s and docs 234s --c-namespace NAMESPACE 234s The namespace to use for generated C code 234s --c-generate-object-manager 234s Generate a GDBusObjectManagerClient subclass when 234s generating C code 234s --c-generate-autocleanup {none,objects,all} 234s Generate autocleanup support 234s --generate-docbook OUTFILES 234s Generate Docbook in OUTFILES-org.Project.IFace.xml 234s --generate-md OUTFILES 234s Generate Markdown in OUTFILES-org.Project.IFace.md 234s --generate-rst OUTFILES 234s Generate reStructuredText in OUTFILES- 234s org.Project.IFace.rst 234s --pragma-once Use "pragma once" as the inclusion guard 234s --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 234s Add annotation (may be used several times) 234s --glib-min-required VERSION 234s Minimum version of GLib to be supported by the 234s outputted code (default: 2.30) 234s --glib-max-allowed VERSION 234s Maximum version of GLib to be used by the outputted 234s code (default: current GLib version) 234s --symbol-decorator SYMBOL_DECORATOR 234s Macro used to decorate a symbol in the outputted 234s header, possibly to export symbols 234s --symbol-decorator-header SYMBOL_DECORATOR_HEADER 234s Additional header required for decorator specified by 234s --symbol-decorator 234s --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 234s Additional define required for decorator specified by 234s --symbol-decorator 234s --generate-c-code OUTFILES 234s Generate C code in OUTFILES.[ch] 234s --header Generate C headers 234s --body Generate C code 234s --interface-info-header 234s Generate GDBusInterfaceInfo C header 234s --interface-info-body 234s Generate GDBusInterfaceInfo C code 234s --output FILE Write output into the specified file 234s --output-directory OUTDIR 234s Location to output generated files 234s 2.86.3 234s + glib-compile-resources --version 234s + glib-genmarshal --version 235s glib-genmarshal version 2.86.3 235s glib-genmarshal comes with ABSOLUTELY NO WARRANTY. 235s You may redistribute copies of glib-genmarshal under the terms of 235s the GNU General Public License which can be found in the 235s GLib source package. Sources, examples and contact 235s information are available at http://www.gtk.org 235s + glib-gettextize --version 235s /usr/bin/glib-gettextize (GNU glib) 2.86.3 235s Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc. 235s This is free software; see the source for copying conditions. There is NO 235s warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 235s Written by Ulrich Drepper 235s + glib-mkenums --version 235s glib-mkenums version 2.86.3 235s glib-mkenums comes with ABSOLUTELY NO WARRANTY. 235s You may redistribute copies of glib-mkenums under the terms of 235s the GNU General Public License which can be found in the 235s GLib source package. Sources, examples and contact 235s information are available at http://www.gtk.org 235s GObject 235s gtester version 2.86.3 235s + gobject-query tree 235s + gtester --version 235s + gtester-report --version 235s gtester-report (GLib utils) version 2.86.3. 235s autopkgtest [21:41:42]: test libgio-2.0-dev-bin: -----------------------] 235s autopkgtest [21:41:42]: test libgio-2.0-dev-bin: - - - - - - - - - - results - - - - - - - - - - 235s libgio-2.0-dev-bin PASS (superficial) 236s autopkgtest [21:41:43]: test libglib2.0-dev: preparing testbed 255s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 348s autopkgtest [21:43:35]: testbed dpkg architecture: ppc64el 348s autopkgtest [21:43:35]: testbed apt version: 3.1.14 348s autopkgtest [21:43:35]: @@@@@@@@@@@@@@@@@@@@ test bed setup 349s autopkgtest [21:43:36]: testbed release detected to be: resolute 349s autopkgtest [21:43:36]: updating testbed package index (apt update) 350s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 350s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 350s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 350s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 350s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 350s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 350s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 350s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 350s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 350s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 350s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 350s Fetched 3201 kB in 1s (3713 kB/s) 351s Reading package lists... 352s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 352s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 352s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 352s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 353s Reading package lists... 353s Reading package lists... 353s Building dependency tree... 353s Reading state information... 353s Calculating upgrade... 353s The following packages will be upgraded: 353s libpcre2-8-0 353s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 353s Need to get 325 kB of archives. 353s After this operation, 0 B of additional disk space will be used. 353s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 355s dpkg-preconfigure: unable to re-open stdin: No such file or directory 355s Fetched 325 kB in 0s (22.2 MB/s) 363s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 363s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 364s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 366s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 367s Processing triggers for libselinux1:ppc64el (3.9-4) ... 369s Processing triggers for libc-bin (2.42-2ubuntu4) ... 371s autopkgtest [21:43:58]: upgrading testbed (apt dist-upgrade and autopurge) 371s Reading package lists... 371s Building dependency tree... 371s Reading state information... 371s Calculating upgrade... 371s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 371s Reading package lists... 371s Building dependency tree... 371s Reading state information... 371s Solving dependencies... 371s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 374s Reading package lists... 374s Building dependency tree... 374s Reading state information... 374s Solving dependencies... 374s The following NEW packages will be installed: 374s build-essential cpp cpp-15 cpp-15-powerpc64le-linux-gnu 374s cpp-powerpc64le-linux-gnu g++ g++-15 g++-15-powerpc64le-linux-gnu 374s g++-powerpc64le-linux-gnu gcc gcc-15 gcc-15-powerpc64le-linux-gnu 374s gcc-powerpc64le-linux-gnu gir1.2-glib-2.0-dev girepository-tools libasan8 374s libblkid-dev libc-dev-bin libc6-dev libcc1-0 libcrypt-dev libffi-dev 374s libgcc-15-dev libgio-2.0-dev libgio-2.0-dev-bin libglib2.0-bin 374s libglib2.0-dev libglib2.0-dev-bin libgomp1 libisl23 libitm1 liblsan0 374s libmount-dev libmpc3 libpcre2-16-0 libpcre2-32-0 libpcre2-dev 374s libpcre2-posix3 libpkgconf3 libquadmath0 libselinux-dev libsepol-dev 374s libstdc++-15-dev libsysprof-capture-4-dev libtsan2 libubsan1 linux-libc-dev 374s native-architecture pkgconf pkgconf-bin rpcsvc-proto uuid-dev zlib1g-dev 374s 0 upgraded, 53 newly installed, 0 to remove and 0 not upgraded. 374s Need to get 72.9 MB of archives. 374s After this operation, 282 MB of additional disk space will be used. 374s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libc-dev-bin ppc64el 2.42-2ubuntu4 [23.9 kB] 374s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el linux-libc-dev ppc64el 6.18.0-9.9 [1847 kB] 374s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt-dev ppc64el 1:4.5.1-1 [162 kB] 374s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el rpcsvc-proto ppc64el 1.4.3-1build1 [84.2 kB] 374s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el libc6-dev ppc64el 2.42-2ubuntu4 [2080 kB] 375s Get:6 http://ftpmaster.internal/ubuntu resolute/main ppc64el libisl23 ppc64el 0.27-1build1 [893 kB] 375s Get:7 http://ftpmaster.internal/ubuntu resolute/main ppc64el libmpc3 ppc64el 1.3.1-2 [62.5 kB] 375s Get:8 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [11.4 MB] 375s Get:9 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-15 ppc64el 15.2.0-12ubuntu1 [1038 B] 375s Get:10 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [5746 B] 375s Get:11 http://ftpmaster.internal/ubuntu resolute/main ppc64el cpp ppc64el 4:15.2.0-4ubuntu1 [22.4 kB] 375s Get:12 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcc1-0 ppc64el 15.2.0-12ubuntu1 [49.0 kB] 375s Get:13 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgomp1 ppc64el 15.2.0-12ubuntu1 [169 kB] 375s Get:14 http://ftpmaster.internal/ubuntu resolute/main ppc64el libitm1 ppc64el 15.2.0-12ubuntu1 [32.2 kB] 375s Get:15 http://ftpmaster.internal/ubuntu resolute/main ppc64el libasan8 ppc64el 15.2.0-12ubuntu1 [3006 kB] 375s Get:16 http://ftpmaster.internal/ubuntu resolute/main ppc64el liblsan0 ppc64el 15.2.0-12ubuntu1 [1374 kB] 375s Get:17 http://ftpmaster.internal/ubuntu resolute/main ppc64el libtsan2 ppc64el 15.2.0-12ubuntu1 [2729 kB] 375s Get:18 http://ftpmaster.internal/ubuntu resolute/main ppc64el libubsan1 ppc64el 15.2.0-12ubuntu1 [1231 kB] 375s Get:19 http://ftpmaster.internal/ubuntu resolute/main ppc64el libquadmath0 ppc64el 15.2.0-12ubuntu1 [160 kB] 375s Get:20 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgcc-15-dev ppc64el 15.2.0-12ubuntu1 [1670 kB] 375s Get:21 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [22.4 MB] 375s Get:22 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-15 ppc64el 15.2.0-12ubuntu1 [530 kB] 375s Get:23 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [1220 B] 375s Get:24 http://ftpmaster.internal/ubuntu resolute/main ppc64el gcc ppc64el 4:15.2.0-4ubuntu1 [5032 B] 375s Get:25 http://ftpmaster.internal/ubuntu resolute/main ppc64el libstdc++-15-dev ppc64el 15.2.0-12ubuntu1 [2747 kB] 376s Get:26 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-15-powerpc64le-linux-gnu ppc64el 15.2.0-12ubuntu1 [13.0 MB] 376s Get:27 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-15 ppc64el 15.2.0-12ubuntu1 [25.3 kB] 376s Get:28 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++-powerpc64le-linux-gnu ppc64el 4:15.2.0-4ubuntu1 [970 B] 376s Get:29 http://ftpmaster.internal/ubuntu resolute/main ppc64el g++ ppc64el 4:15.2.0-4ubuntu1 [1092 B] 376s Get:30 http://ftpmaster.internal/ubuntu resolute/main ppc64el build-essential ppc64el 12.12ubuntu2 [5256 B] 376s Get:31 http://ftpmaster.internal/ubuntu resolute/main ppc64el gir1.2-glib-2.0-dev ppc64el 2.86.3-4 [865 kB] 376s Get:32 http://ftpmaster.internal/ubuntu resolute/main ppc64el native-architecture all 0.2.6build1 [2256 B] 376s Get:33 http://ftpmaster.internal/ubuntu resolute/main ppc64el girepository-tools ppc64el 2.86.3-4 [135 kB] 376s Get:34 http://ftpmaster.internal/ubuntu resolute/main ppc64el libffi-dev ppc64el 3.5.2-3 [72.7 kB] 376s Get:35 http://ftpmaster.internal/ubuntu resolute/main ppc64el uuid-dev ppc64el 2.41.2-4ubuntu2 [59.9 kB] 376s Get:36 http://ftpmaster.internal/ubuntu resolute/main ppc64el libblkid-dev ppc64el 2.41.2-4ubuntu2 [293 kB] 376s Get:37 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsepol-dev ppc64el 3.9-2 [516 kB] 376s Get:38 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-16-0 ppc64el 10.46-1build1 [292 kB] 376s Get:39 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-32-0 ppc64el 10.46-1build1 [275 kB] 376s Get:40 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-posix3 ppc64el 10.46-1build1 [7338 B] 376s Get:41 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-dev ppc64el 10.46-1build1 [937 kB] 376s Get:42 http://ftpmaster.internal/ubuntu resolute/main ppc64el libselinux-dev ppc64el 3.9-4 [210 kB] 376s Get:43 http://ftpmaster.internal/ubuntu resolute/main ppc64el libmount-dev ppc64el 2.41.2-4ubuntu2 [37.6 kB] 376s Get:44 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsysprof-capture-4-dev ppc64el 49.0-5 [62.0 kB] 376s Get:45 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpkgconf3 ppc64el 1.8.1-4build1 [37.9 kB] 376s Get:46 http://ftpmaster.internal/ubuntu resolute/main ppc64el pkgconf-bin ppc64el 1.8.1-4build1 [22.7 kB] 376s Get:47 http://ftpmaster.internal/ubuntu resolute/main ppc64el pkgconf ppc64el 1.8.1-4build1 [16.8 kB] 376s Get:48 http://ftpmaster.internal/ubuntu resolute/main ppc64el zlib1g-dev ppc64el 1:1.3.dfsg+really1.3.1-1ubuntu2 [903 kB] 376s Get:49 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgio-2.0-dev ppc64el 2.86.3-4 [2206 kB] 376s Get:50 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgio-2.0-dev-bin ppc64el 2.86.3-4 [131 kB] 376s Get:51 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-bin ppc64el 2.86.3-4 [111 kB] 376s Get:52 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-dev-bin ppc64el 2.86.3-4 [18.2 kB] 376s Get:53 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-dev ppc64el 2.86.3-4 [18.9 kB] 376s Fetched 72.9 MB in 2s (38.1 MB/s) 376s Selecting previously unselected package libc-dev-bin. 377s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 377s Preparing to unpack .../00-libc-dev-bin_2.42-2ubuntu4_ppc64el.deb ... 377s Unpacking libc-dev-bin (2.42-2ubuntu4) ... 377s Selecting previously unselected package linux-libc-dev:ppc64el. 377s Preparing to unpack .../01-linux-libc-dev_6.18.0-9.9_ppc64el.deb ... 377s Unpacking linux-libc-dev:ppc64el (6.18.0-9.9) ... 377s Selecting previously unselected package libcrypt-dev:ppc64el. 377s Preparing to unpack .../02-libcrypt-dev_1%3a4.5.1-1_ppc64el.deb ... 377s Unpacking libcrypt-dev:ppc64el (1:4.5.1-1) ... 377s Selecting previously unselected package rpcsvc-proto. 377s Preparing to unpack .../03-rpcsvc-proto_1.4.3-1build1_ppc64el.deb ... 377s Unpacking rpcsvc-proto (1.4.3-1build1) ... 377s Selecting previously unselected package libc6-dev:ppc64el. 377s Preparing to unpack .../04-libc6-dev_2.42-2ubuntu4_ppc64el.deb ... 377s Unpacking libc6-dev:ppc64el (2.42-2ubuntu4) ... 377s Selecting previously unselected package libisl23:ppc64el. 377s Preparing to unpack .../05-libisl23_0.27-1build1_ppc64el.deb ... 377s Unpacking libisl23:ppc64el (0.27-1build1) ... 377s Selecting previously unselected package libmpc3:ppc64el. 377s Preparing to unpack .../06-libmpc3_1.3.1-2_ppc64el.deb ... 377s Unpacking libmpc3:ppc64el (1.3.1-2) ... 377s Selecting previously unselected package cpp-15-powerpc64le-linux-gnu. 377s Preparing to unpack .../07-cpp-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking cpp-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 377s Selecting previously unselected package cpp-15. 377s Preparing to unpack .../08-cpp-15_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking cpp-15 (15.2.0-12ubuntu1) ... 377s Selecting previously unselected package cpp-powerpc64le-linux-gnu. 377s Preparing to unpack .../09-cpp-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 377s Unpacking cpp-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 377s Selecting previously unselected package cpp. 377s Preparing to unpack .../10-cpp_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 377s Unpacking cpp (4:15.2.0-4ubuntu1) ... 377s Selecting previously unselected package libcc1-0:ppc64el. 377s Preparing to unpack .../11-libcc1-0_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking libcc1-0:ppc64el (15.2.0-12ubuntu1) ... 377s Selecting previously unselected package libgomp1:ppc64el. 377s Preparing to unpack .../12-libgomp1_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking libgomp1:ppc64el (15.2.0-12ubuntu1) ... 377s Selecting previously unselected package libitm1:ppc64el. 377s Preparing to unpack .../13-libitm1_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking libitm1:ppc64el (15.2.0-12ubuntu1) ... 377s Selecting previously unselected package libasan8:ppc64el. 377s Preparing to unpack .../14-libasan8_15.2.0-12ubuntu1_ppc64el.deb ... 377s Unpacking libasan8:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package liblsan0:ppc64el. 378s Preparing to unpack .../15-liblsan0_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking liblsan0:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package libtsan2:ppc64el. 378s Preparing to unpack .../16-libtsan2_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking libtsan2:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package libubsan1:ppc64el. 378s Preparing to unpack .../17-libubsan1_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking libubsan1:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package libquadmath0:ppc64el. 378s Preparing to unpack .../18-libquadmath0_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking libquadmath0:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package libgcc-15-dev:ppc64el. 378s Preparing to unpack .../19-libgcc-15-dev_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking libgcc-15-dev:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package gcc-15-powerpc64le-linux-gnu. 378s Preparing to unpack .../20-gcc-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking gcc-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package gcc-15. 378s Preparing to unpack .../21-gcc-15_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking gcc-15 (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package gcc-powerpc64le-linux-gnu. 378s Preparing to unpack .../22-gcc-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 378s Unpacking gcc-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 378s Selecting previously unselected package gcc. 378s Preparing to unpack .../23-gcc_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 378s Unpacking gcc (4:15.2.0-4ubuntu1) ... 378s Selecting previously unselected package libstdc++-15-dev:ppc64el. 378s Preparing to unpack .../24-libstdc++-15-dev_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking libstdc++-15-dev:ppc64el (15.2.0-12ubuntu1) ... 378s Selecting previously unselected package g++-15-powerpc64le-linux-gnu. 378s Preparing to unpack .../25-g++-15-powerpc64le-linux-gnu_15.2.0-12ubuntu1_ppc64el.deb ... 378s Unpacking g++-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 379s Selecting previously unselected package g++-15. 379s Preparing to unpack .../26-g++-15_15.2.0-12ubuntu1_ppc64el.deb ... 379s Unpacking g++-15 (15.2.0-12ubuntu1) ... 379s Selecting previously unselected package g++-powerpc64le-linux-gnu. 379s Preparing to unpack .../27-g++-powerpc64le-linux-gnu_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 379s Unpacking g++-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 379s Selecting previously unselected package g++. 379s Preparing to unpack .../28-g++_4%3a15.2.0-4ubuntu1_ppc64el.deb ... 379s Unpacking g++ (4:15.2.0-4ubuntu1) ... 379s Selecting previously unselected package build-essential. 379s Preparing to unpack .../29-build-essential_12.12ubuntu2_ppc64el.deb ... 379s Unpacking build-essential (12.12ubuntu2) ... 379s Selecting previously unselected package gir1.2-glib-2.0-dev:ppc64el. 379s Preparing to unpack .../30-gir1.2-glib-2.0-dev_2.86.3-4_ppc64el.deb ... 379s Unpacking gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 379s Selecting previously unselected package native-architecture. 379s Preparing to unpack .../31-native-architecture_0.2.6build1_all.deb ... 379s Unpacking native-architecture (0.2.6build1) ... 379s Selecting previously unselected package girepository-tools:ppc64el. 379s Preparing to unpack .../32-girepository-tools_2.86.3-4_ppc64el.deb ... 379s Unpacking girepository-tools:ppc64el (2.86.3-4) ... 379s Selecting previously unselected package libffi-dev:ppc64el. 379s Preparing to unpack .../33-libffi-dev_3.5.2-3_ppc64el.deb ... 379s Unpacking libffi-dev:ppc64el (3.5.2-3) ... 379s Selecting previously unselected package uuid-dev:ppc64el. 379s Preparing to unpack .../34-uuid-dev_2.41.2-4ubuntu2_ppc64el.deb ... 379s Unpacking uuid-dev:ppc64el (2.41.2-4ubuntu2) ... 379s Selecting previously unselected package libblkid-dev:ppc64el. 379s Preparing to unpack .../35-libblkid-dev_2.41.2-4ubuntu2_ppc64el.deb ... 379s Unpacking libblkid-dev:ppc64el (2.41.2-4ubuntu2) ... 379s Selecting previously unselected package libsepol-dev:ppc64el. 379s Preparing to unpack .../36-libsepol-dev_3.9-2_ppc64el.deb ... 379s Unpacking libsepol-dev:ppc64el (3.9-2) ... 379s Selecting previously unselected package libpcre2-16-0:ppc64el. 379s Preparing to unpack .../37-libpcre2-16-0_10.46-1build1_ppc64el.deb ... 379s Unpacking libpcre2-16-0:ppc64el (10.46-1build1) ... 379s Selecting previously unselected package libpcre2-32-0:ppc64el. 379s Preparing to unpack .../38-libpcre2-32-0_10.46-1build1_ppc64el.deb ... 379s Unpacking libpcre2-32-0:ppc64el (10.46-1build1) ... 379s Selecting previously unselected package libpcre2-posix3:ppc64el. 379s Preparing to unpack .../39-libpcre2-posix3_10.46-1build1_ppc64el.deb ... 379s Unpacking libpcre2-posix3:ppc64el (10.46-1build1) ... 379s Selecting previously unselected package libpcre2-dev:ppc64el. 379s Preparing to unpack .../40-libpcre2-dev_10.46-1build1_ppc64el.deb ... 379s Unpacking libpcre2-dev:ppc64el (10.46-1build1) ... 379s Selecting previously unselected package libselinux-dev:ppc64el. 379s Preparing to unpack .../41-libselinux-dev_3.9-4_ppc64el.deb ... 379s Unpacking libselinux-dev:ppc64el (3.9-4) ... 380s Selecting previously unselected package libmount-dev:ppc64el. 380s Preparing to unpack .../42-libmount-dev_2.41.2-4ubuntu2_ppc64el.deb ... 380s Unpacking libmount-dev:ppc64el (2.41.2-4ubuntu2) ... 380s Selecting previously unselected package libsysprof-capture-4-dev:ppc64el. 380s Preparing to unpack .../43-libsysprof-capture-4-dev_49.0-5_ppc64el.deb ... 380s Unpacking libsysprof-capture-4-dev:ppc64el (49.0-5) ... 380s Selecting previously unselected package libpkgconf3:ppc64el. 380s Preparing to unpack .../44-libpkgconf3_1.8.1-4build1_ppc64el.deb ... 380s Unpacking libpkgconf3:ppc64el (1.8.1-4build1) ... 380s Selecting previously unselected package pkgconf-bin. 380s Preparing to unpack .../45-pkgconf-bin_1.8.1-4build1_ppc64el.deb ... 380s Unpacking pkgconf-bin (1.8.1-4build1) ... 380s Selecting previously unselected package pkgconf:ppc64el. 380s Preparing to unpack .../46-pkgconf_1.8.1-4build1_ppc64el.deb ... 380s Unpacking pkgconf:ppc64el (1.8.1-4build1) ... 380s Selecting previously unselected package zlib1g-dev:ppc64el. 380s Preparing to unpack .../47-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu2_ppc64el.deb ... 380s Unpacking zlib1g-dev:ppc64el (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 380s Selecting previously unselected package libgio-2.0-dev:ppc64el. 380s Preparing to unpack .../48-libgio-2.0-dev_2.86.3-4_ppc64el.deb ... 380s Unpacking libgio-2.0-dev:ppc64el (2.86.3-4) ... 380s Selecting previously unselected package libgio-2.0-dev-bin. 380s Preparing to unpack .../49-libgio-2.0-dev-bin_2.86.3-4_ppc64el.deb ... 380s Unpacking libgio-2.0-dev-bin (2.86.3-4) ... 380s Selecting previously unselected package libglib2.0-bin. 380s Preparing to unpack .../50-libglib2.0-bin_2.86.3-4_ppc64el.deb ... 380s Unpacking libglib2.0-bin (2.86.3-4) ... 380s Selecting previously unselected package libglib2.0-dev-bin. 380s Preparing to unpack .../51-libglib2.0-dev-bin_2.86.3-4_ppc64el.deb ... 380s Unpacking libglib2.0-dev-bin (2.86.3-4) ... 380s Selecting previously unselected package libglib2.0-dev:ppc64el. 380s Preparing to unpack .../52-libglib2.0-dev_2.86.3-4_ppc64el.deb ... 380s Unpacking libglib2.0-dev:ppc64el (2.86.3-4) ... 380s Setting up libgio-2.0-dev-bin (2.86.3-4) ... 380s Setting up native-architecture (0.2.6build1) ... 380s Setting up linux-libc-dev:ppc64el (6.18.0-9.9) ... 380s Setting up libglib2.0-bin (2.86.3-4) ... 380s Setting up libgomp1:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libffi-dev:ppc64el (3.5.2-3) ... 380s Setting up libpcre2-16-0:ppc64el (10.46-1build1) ... 380s Setting up libsysprof-capture-4-dev:ppc64el (49.0-5) ... 380s Setting up libpcre2-32-0:ppc64el (10.46-1build1) ... 380s Setting up libpkgconf3:ppc64el (1.8.1-4build1) ... 380s Setting up rpcsvc-proto (1.4.3-1build1) ... 380s Setting up libquadmath0:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libmpc3:ppc64el (1.3.1-2) ... 380s Setting up libsepol-dev:ppc64el (3.9-2) ... 380s Setting up pkgconf-bin (1.8.1-4build1) ... 380s Setting up libubsan1:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libpcre2-posix3:ppc64el (10.46-1build1) ... 380s Setting up gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 380s Setting up libcrypt-dev:ppc64el (1:4.5.1-1) ... 380s Setting up libasan8:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libtsan2:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libisl23:ppc64el (0.27-1build1) ... 380s Setting up libc-dev-bin (2.42-2ubuntu4) ... 380s Setting up libcc1-0:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up liblsan0:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up libitm1:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up girepository-tools:ppc64el (2.86.3-4) ... 380s Setting up libgcc-15-dev:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up pkgconf:ppc64el (1.8.1-4build1) ... 380s Setting up cpp-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 380s Setting up cpp-15 (15.2.0-12ubuntu1) ... 380s Setting up libc6-dev:ppc64el (2.42-2ubuntu4) ... 380s Setting up cpp-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 380s Setting up libglib2.0-dev-bin (2.86.3-4) ... 380s Setting up libpcre2-dev:ppc64el (10.46-1build1) ... 380s Setting up gcc-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 380s Setting up gcc-15 (15.2.0-12ubuntu1) ... 380s Setting up libstdc++-15-dev:ppc64el (15.2.0-12ubuntu1) ... 380s Setting up gcc-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 380s Setting up uuid-dev:ppc64el (2.41.2-4ubuntu2) ... 380s Setting up zlib1g-dev:ppc64el (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 380s Setting up cpp (4:15.2.0-4ubuntu1) ... 381s Setting up libselinux-dev:ppc64el (3.9-4) ... 381s Setting up libblkid-dev:ppc64el (2.41.2-4ubuntu2) ... 381s Setting up g++-15-powerpc64le-linux-gnu (15.2.0-12ubuntu1) ... 381s Setting up gcc (4:15.2.0-4ubuntu1) ... 381s Setting up g++-15 (15.2.0-12ubuntu1) ... 381s Setting up libmount-dev:ppc64el (2.41.2-4ubuntu2) ... 381s Setting up g++-powerpc64le-linux-gnu (4:15.2.0-4ubuntu1) ... 381s Setting up libgio-2.0-dev:ppc64el (2.86.3-4) ... 381s Setting up g++ (4:15.2.0-4ubuntu1) ... 381s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 381s Setting up build-essential (12.12ubuntu2) ... 381s Processing triggers for install-info (7.2-5) ... 381s Processing triggers for libc-bin (2.42-2ubuntu4) ... 382s Processing triggers for man-db (2.13.1-1) ... 396s Processing triggers for libglib2.0-0t64:ppc64el (2.86.3-4) ... 396s No schema files found: doing nothing. 396s Setting up libglib2.0-dev:ppc64el (2.86.3-4) ... 400s autopkgtest [21:44:27]: test libglib2.0-dev: [----------------------- 401s + debian/tests/build 401s + mode=dynamic 401s + getopt -o --long static -n debian/tests/build -- 401s + getopt_temp= -- 401s + eval set -- -- 401s + set -- -- 401s + true 401s + shift 401s + break 401s + mktemp -d 401s + WORKDIR=/tmp/tmp.GJWkrQrShs 401s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 401s + cd /tmp/tmp.GJWkrQrShs 401s + [ -n ] 401s + CROSS_COMPILE= 401s + cat 401s + cat 401s + cat 401s + cat 401s + cat 401s + cat 401s + cflags= 401s + pcflags= 401s + packages=glib-2.0 401s + pkg-config --cflags --libs glib-2.0 401s + gcc -o glib-dynamic glib.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 401s build (glib, dynamic): OK 401s + echo build (glib, dynamic): OK 401s + [ -x glib-dynamic ] 401s + foo=bar ./glib-dynamic 401s run (glib, dynamic): OK 401s + echo run (glib, dynamic): OK 401s + cflags= 401s + pcflags= 401s + packages=gobject-2.0 401s + pkg-config --cflags --libs gobject-2.0 401s + gcc -o gobject-dynamic gobject.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 401s build (gobject, dynamic): OK 401s run (gobject, dynamic): OK 401s + echo build (gobject, dynamic): OK 401s + [ -x gobject-dynamic ] 401s + foo=bar ./gobject-dynamic 401s + echo run (gobject, dynamic): OK 401s + cflags= 401s + pcflags= 401s + packages=gio-2.0 401s + pkg-config --cflags --libs gio-2.0 401s + gcc -o gio-dynamic gio.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread -lgio-2.0 -lgobject-2.0 -lglib-2.0 401s build (gio, dynamic): OK 401s run (gio, dynamic): OK 401s + echo build (gio, dynamic): OK 401s + [ -x gio-dynamic ] 401s + foo=bar ./gio-dynamic 401s + echo run (gio, dynamic): OK 401s + cflags= 401s + pcflags= 401s + packages=gio-unix-2.0 401s + pkg-config --cflags --libs gio-unix-2.0 401s + gcc -o gio-unix-dynamic gio-unix.c -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread -lgio-2.0 -lgobject-2.0 -lglib-2.0 402s build (gio-unix, dynamic): OK 402s run (gio-unix, dynamic): OK 402s + echo build (gio-unix, dynamic): OK 402s + [ -x gio-unix-dynamic ] 402s + foo=bar ./gio-unix-dynamic 402s + echo run (gio-unix, dynamic): OK 402s + cflags= 402s + pcflags= 402s + packages=gmodule-2.0 402s + pkg-config --cflags --libs gmodule-2.0 402s + gcc -o gmodule-dynamic gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0 402s build (gmodule, dynamic): OK 402s run (gmodule, dynamic): OK 402s + echo build (gmodule, dynamic): OK 402s + [ -x gmodule-dynamic ] 402s + foo=bar ./gmodule-dynamic 402s + echo run (gmodule, dynamic): OK 402s + cflags= 402s + pcflags= 402s + packages=gthread-2.0 402s + pkg-config --cflags --libs gthread-2.0 402s + gcc -o gthread-dynamic gthread.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 402s + build (gthread, dynamic): OK 402s echo build (gthread, dynamic): OK 402s + [ -x gthread-dynamic ] 402s + foo=bar ./gthread-dynamic 402s run (gthread, dynamic): OK 402s + echo run (gthread, dynamic): OK 402s + rm -rf /tmp/tmp.GJWkrQrShs 402s + debian/tests/build-static 402s + mode=dynamic 402s + getopt -o --long static -n debian/tests/build -- --static 402s + getopt_temp= --static -- 402s + eval set -- --static -- 402s + set -- --static -- 402s + true 402s + mode=static 402s + shift 402s + continue 402s + true 402s + shift 402s + break 402s + mktemp -d 402s + WORKDIR=/tmp/tmp.4XAwpZUu4Q 402s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 402s + cd /tmp/tmp.4XAwpZUu4Q 402s + [ -n ] 402s + CROSS_COMPILE= 402s + cat 402s + cat 402s + cat 402s + cat 402s + cat 402s + cat 402s + cflags= 402s + pcflags= 402s + packages=glib-2.0 402s + cflags=-static 402s + pcflags=--static 402s + pkg-config --static --cflags --libs glib-2.0 402s + gcc -static -o glib-static glib.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 402s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s build (glib, static): OK 402s run (glib, static): OK 402s + echo build (glib, static): OK 402s + [ -x glib-static ] 402s + foo=bar ./glib-static 402s + echo run (glib, static): OK 402s + cflags= 402s + pcflags= 402s + packages=gobject-2.0 402s + cflags=-static 402s + pcflags=--static 402s + pkg-config --static --cflags --libs gobject-2.0 402s + gcc -static -o gobject-static gobject.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 -lffi 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 402s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s build (gobject, static): OK 402s + echo build (gobject, static): OK 402s + [ -x gobject-static ] 402s + foo=bar ./gobject-static 402s + echo run (gobject, static): OK 402s + cflags= 402s + pcflags= 402s + packages=gio-2.0 402s + cflags=-static 402s + pcflags=--static 402s + continue 402s + cflags= 402s + pcflags= 402s + packages=gio-unix-2.0 402s + cflags=-static 402s + pcflags=--static 402s + continue 402s + cflags= 402s + pcflags= 402s + packages=gmodule-2.0 402s + cflags=-static 402s + pcflags=--static 402s + pkg-config --static --cflags --libs gmodule-2.0 402s run (gobject, static): OK 402s + gcc -static -o gmodule-static gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libgmodule-2.0.a(gmodule.c.o): in function `g_module_open_full': 402s (.text+0x944): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 402s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s build (gmodule, static): OK 402s run (gmodule, static): OK 402s + echo build (gmodule, static): OK 402s + [ -x gmodule-static ] 402s + foo=bar ./gmodule-static 402s + echo run (gmodule, static): OK 402s + cflags= 402s + pcflags= 402s + packages=gthread-2.0 402s + cflags=-static 402s + pcflags=--static 402s + pkg-config --static --cflags --libs gthread-2.0 402s + gcc -static -o gthread-static gthread.c -I/usr/include/glib-2.0 -I/usr/lib/powerpc64le-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -Wl,-z,nodelete -pthread -lpcre2-8 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: /usr/lib/gcc/powerpc64le-linux-gnu/15/../../../powerpc64le-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 402s (.text+0x154): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x438): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s /usr/bin/powerpc64le-linux-gnu-ld.bfd: (.text+0x1a4): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 402s build (gthread, static): OK 402s run (gthread, static): OK 402s + echo build (gthread, static): OK 402s + [ -x gthread-static ] 402s + foo=bar ./gthread-static 402s + echo run (gthread, static): OK 402s + rm -rf /tmp/tmp.4XAwpZUu4Q 402s + debian/tests/girepository-tools 402s + cd /tmp/autopkgtest.lRjasG/autopkgtest_tmp 402s + dpkg-architecture -qDEB_HOST_GNU_TYPE 403s + DEB_HOST_GNU_TYPE=powerpc64le-linux-gnu 403s + dpkg-architecture -qDEB_HOST_MULTIARCH 403s + DEB_HOST_MULTIARCH=powerpc64le-linux-gnu 403s + powerpc64le-linux-gnu-gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 403s typelib: GLib-2.0 403s + powerpc64le-linux-gnu-gi-compile-repository -o GLib.typelib /usr/lib/powerpc64le-linux-gnu/gir-1.0/GLib-2.0.gir 403s + powerpc64le-linux-gnu-gi-decompile-typelib -o GLib.gir GLib.typelib 403s + debian/tests/libgio-2.0-dev-bin 403s + gdbus-codegen --help 403s usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 403s [--c-namespace NAMESPACE] [--c-generate-object-manager] 403s [--c-generate-autocleanup {none,objects,all}] 403s [--generate-docbook OUTFILES] [--generate-md OUTFILES] 403s [--generate-rst OUTFILES] [--pragma-once] 403s [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 403s [--glib-min-required VERSION] 403s [--glib-max-allowed VERSION] 403s [--symbol-decorator SYMBOL_DECORATOR] 403s [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 403s [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 403s [--generate-c-code OUTFILES | --header | --body | 403s --interface-info-header | --interface-info-body] 403s [--output FILE | --output-directory OUTDIR] 403s FILE [FILE ...] 403s 403s D-Bus code and documentation generator 403s 403s positional arguments: 403s FILE D-Bus introspection XML file 403s 403s options: 403s -h, --help show this help message and exit 403s --interface-prefix PREFIX 403s String to strip from D-Bus interface names for code 403s and docs 403s --c-namespace NAMESPACE 403s The namespace to use for generated C code 403s --c-generate-object-manager 403s Generate a GDBusObjectManagerClient subclass when 403s generating C code 403s --c-generate-autocleanup {none,objects,all} 403s Generate autocleanup support 403s --generate-docbook OUTFILES 403s Generate Docbook in OUTFILES-org.Project.IFace.xml 403s --generate-md OUTFILES 403s Generate Markdown in OUTFILES-org.Project.IFace.md 403s --generate-rst OUTFILES 403s Generate reStructuredText in OUTFILES- 403s org.Project.IFace.rst 403s --pragma-once Use "pragma once" as the inclusion guard 403s --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 403s Add annotation (may be used several times) 403s --glib-min-required VERSION 403s Minimum version of GLib to be supported by the 403s outputted code (default: 2.30) 403s --glib-max-allowed VERSION 403s Maximum version of GLib to be used by the outputted 403s code (default: current GLib version) 403s --symbol-decorator SYMBOL_DECORATOR 403s Macro used to decorate a symbol in the outputted 403s header, possibly to export symbols 403s --symbol-decorator-header SYMBOL_DECORATOR_HEADER 403s Additional header required for decorator specified by 403s --symbol-decorator 403s --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 403s Additional define required for decorator specified by 403s --symbol-decorator 403s --generate-c-code OUTFILES 403s Generate C code in OUTFILES.[ch] 403s --header Generate C headers 403s --body Generate C code 403s --interface-info-header 403s Generate GDBusInterfaceInfo C header 403s --interface-info-body 403s Generate GDBusInterfaceInfo C code 403s --output FILE Write output into the specified file 403s --output-directory OUTDIR 403s Location to output generated files 403s + glib-compile-resources --version 403s 2.86.3 403s + glib-genmarshal --version 403s glib-genmarshal version 2.86.3 403s glib-genmarshal comes with ABSOLUTELY NO WARRANTY. 403s You may redistribute copies of glib-genmarshal under the terms of 403s the GNU General Public License which can be found in the 403s GLib source package. Sources, examples and contact 403s information are available at http://www.gtk.org 403s /usr/bin/glib-gettextize (GNU glib) 2.86.3 403s Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc. 403s This is free software; see the source for copying conditions. There is NO 403s warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 403s Written by Ulrich Drepper 403s + glib-gettextize --version 403s + glib-mkenums --version 403s glib-mkenums version 2.86.3 403s glib-mkenums comes with ABSOLUTELY NO WARRANTY. 403s You may redistribute copies of glib-mkenums under the terms of 403s the GNU General Public License which can be found in the 403s GLib source package. Sources, examples and contact 403s information are available at http://www.gtk.org 403s + gobject-query tree 403s GObject 403s + gtester --version 403s gtester version 2.86.3 403s + gtester-report --version 403s gtester-report (GLib utils) version 2.86.3. 403s + cd /tmp/autopkgtest.lRjasG/autopkgtest_tmp 403s + dpkg-architecture -qDEB_HOST_MULTIARCH 403s + DEB_HOST_MULTIARCH=powerpc64le-linux-gnu 403s + gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 403s typelib: GLib-2.0 403s + gi-compile-repository -o GLib.typelib /usr/lib/powerpc64le-linux-gnu/gir-1.0/GLib-2.0.gir 403s + gi-decompile-typelib -o GLib.gir GLib.typelib 404s autopkgtest [21:44:31]: test libglib2.0-dev: -----------------------] 404s autopkgtest [21:44:31]: test libglib2.0-dev: - - - - - - - - - - results - - - - - - - - - - 404s libglib2.0-dev PASS (superficial) 405s autopkgtest [21:44:32]: test installed-tests: preparing testbed 423s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 471s autopkgtest [21:45:38]: testbed dpkg architecture: ppc64el 472s autopkgtest [21:45:39]: testbed apt version: 3.1.14 472s autopkgtest [21:45:39]: @@@@@@@@@@@@@@@@@@@@ test bed setup 472s autopkgtest [21:45:39]: testbed release detected to be: resolute 473s autopkgtest [21:45:40]: updating testbed package index (apt update) 473s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 473s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 473s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 473s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 473s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 473s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 473s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 474s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 474s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 474s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 474s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 474s Fetched 3201 kB in 1s (4589 kB/s) 475s Reading package lists... 476s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 476s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 476s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 476s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 477s Reading package lists... 477s Reading package lists... 477s Building dependency tree... 477s Reading state information... 477s Calculating upgrade... 477s The following packages will be upgraded: 477s libpcre2-8-0 477s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 477s Need to get 325 kB of archives. 477s After this operation, 0 B of additional disk space will be used. 477s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 477s dpkg-preconfigure: unable to re-open stdin: No such file or directory 477s Fetched 325 kB in 0s (14.5 MB/s) 478s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 478s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 478s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 479s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 480s Processing triggers for libselinux1:ppc64el (3.9-4) ... 480s Processing triggers for libc-bin (2.42-2ubuntu4) ... 480s autopkgtest [21:45:47]: upgrading testbed (apt dist-upgrade and autopurge) 480s Reading package lists... 480s Building dependency tree... 480s Reading state information... 480s Calculating upgrade... 480s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 480s Reading package lists... 481s Building dependency tree... 481s Reading state information... 481s Solving dependencies... 481s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 483s Reading package lists... 483s Building dependency tree... 483s Reading state information... 483s Solving dependencies... 483s The following NEW packages will be installed: 483s dbus-x11 desktop-file-utils gir1.2-glib-2.0-dev girepository-tools 483s gnome-desktop-testing libfontenc1 libgbm1 libgio-2.0-dev-bin libgl1 483s libgl1-mesa-dri libglib2.0-bin libglib2.0-dev-bin libglib2.0-tests libglvnd0 483s libglx-mesa0 libglx0 libice6 libpixman-1-0 libsm6 libunwind8 libvulkan1 483s libx11-xcb1 libxaw7 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 483s libxcb-shm0 libxcb-sync1 libxcb-xfixes0 libxfont2 libxkbfile1 libxmu6 483s libxpm4 libxrandr2 libxrender1 libxshmfence1 libxt6t64 libxxf86vm1 483s mesa-libgallium native-architecture python3-dbusmock tzdata-legacy 483s x11-common x11-xkb-utils xserver-common xvfb 483s 0 upgraded, 47 newly installed, 0 to remove and 0 not upgraded. 483s Need to get 19.9 MB of archives. 483s After this operation, 114 MB of additional disk space will be used. 483s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el dbus-x11 ppc64el 1.16.2-2ubuntu2 [24.4 kB] 483s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el desktop-file-utils ppc64el 0.28-1build1 [62.3 kB] 484s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el gir1.2-glib-2.0-dev ppc64el 2.86.3-4 [865 kB] 484s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el native-architecture all 0.2.6build1 [2256 B] 484s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el girepository-tools ppc64el 2.86.3-4 [135 kB] 484s Get:6 http://ftpmaster.internal/ubuntu resolute/universe ppc64el gnome-desktop-testing ppc64el 2021.1-5 [17.8 kB] 484s Get:7 http://ftpmaster.internal/ubuntu resolute/main ppc64el libfontenc1 ppc64el 1:1.1.8-1build2 [16.1 kB] 484s Get:8 http://ftpmaster.internal/ubuntu resolute/main ppc64el libx11-xcb1 ppc64el 2:1.8.12-1build1 [8022 B] 484s Get:9 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-dri3-0 ppc64el 1.17.0-2ubuntu1 [7964 B] 484s Get:10 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-present0 ppc64el 1.17.0-2ubuntu1 [6340 B] 484s Get:11 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-randr0 ppc64el 1.17.0-2ubuntu1 [19.1 kB] 484s Get:12 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-sync1 ppc64el 1.17.0-2ubuntu1 [9864 B] 484s Get:13 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-xfixes0 ppc64el 1.17.0-2ubuntu1 [10.8 kB] 484s Get:14 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxshmfence1 ppc64el 1.3.3-1 [5364 B] 484s Get:15 http://ftpmaster.internal/ubuntu resolute/main ppc64el mesa-libgallium ppc64el 25.3.3-1ubuntu1 [12.5 MB] 484s Get:16 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgbm1 ppc64el 25.3.3-1ubuntu1 [41.7 kB] 484s Get:17 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgio-2.0-dev-bin ppc64el 2.86.3-4 [131 kB] 484s Get:18 http://ftpmaster.internal/ubuntu resolute/main ppc64el libvulkan1 ppc64el 1.4.335.0-1 [175 kB] 484s Get:19 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgl1-mesa-dri ppc64el 25.3.3-1ubuntu1 [36.4 kB] 484s Get:20 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-bin ppc64el 2.86.3-4 [111 kB] 484s Get:21 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-dev-bin ppc64el 2.86.3-4 [18.2 kB] 484s Get:22 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-dbusmock all 0.38.1-1 [92.0 kB] 484s Get:23 http://ftpmaster.internal/ubuntu resolute/main ppc64el tzdata-legacy all 2025c-3ubuntu3 [99.3 kB] 484s Get:24 http://ftpmaster.internal/ubuntu resolute/universe ppc64el libglib2.0-tests ppc64el 2.86.3-4 [2434 kB] 484s Get:25 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-glx0 ppc64el 1.17.0-2ubuntu1 [26.4 kB] 484s Get:26 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxcb-shm0 ppc64el 1.17.0-2ubuntu1 [6072 B] 484s Get:27 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxxf86vm1 ppc64el 1:1.1.4-2 [12.0 kB] 484s Get:28 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglx-mesa0 ppc64el 25.3.3-1ubuntu1 [132 kB] 484s Get:29 http://ftpmaster.internal/ubuntu resolute/main ppc64el x11-common all 1:7.7+24ubuntu1 [22.4 kB] 484s Get:30 http://ftpmaster.internal/ubuntu resolute/main ppc64el libice6 ppc64el 2:1.1.1-1build1 [51.9 kB] 484s Get:31 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpixman-1-0 ppc64el 0.46.4-1 [347 kB] 484s Get:32 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsm6 ppc64el 2:1.2.6-1 [18.6 kB] 484s Get:33 http://ftpmaster.internal/ubuntu resolute/main ppc64el libunwind8 ppc64el 1.8.3-0ubuntu1 [68.2 kB] 484s Get:34 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxt6t64 ppc64el 1:1.2.1-1.3 [203 kB] 484s Get:35 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxmu6 ppc64el 2:1.1.3-4 [56.9 kB] 484s Get:36 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxpm4 ppc64el 1:3.5.17-1build3 [50.5 kB] 484s Get:37 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxaw7 ppc64el 2:1.0.16-1build1 [234 kB] 484s Get:38 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxfont2 ppc64el 1:2.0.6-2 [119 kB] 484s Get:39 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxkbfile1 ppc64el 1:1.1.0-1build5 [90.2 kB] 484s Get:40 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxrender1 ppc64el 1:0.9.12-1 [23.0 kB] 484s Get:41 http://ftpmaster.internal/ubuntu resolute/main ppc64el libxrandr2 ppc64el 2:1.5.4-1build1 [21.7 kB] 484s Get:42 http://ftpmaster.internal/ubuntu resolute/main ppc64el x11-xkb-utils ppc64el 7.7+9build1 [202 kB] 484s Get:43 http://ftpmaster.internal/ubuntu resolute/main ppc64el xserver-common all 2:21.1.21-1ubuntu1 [34.8 kB] 484s Get:44 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglvnd0 ppc64el 1.7.0-3 [67.2 kB] 484s Get:45 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglx0 ppc64el 1.7.0-3 [42.3 kB] 484s Get:46 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgl1 ppc64el 1.7.0-3 [103 kB] 484s Get:47 http://ftpmaster.internal/ubuntu resolute/universe ppc64el xvfb ppc64el 2:21.1.21-1ubuntu1 [1135 kB] 484s Fetched 19.9 MB in 1s (35.2 MB/s) 484s Selecting previously unselected package dbus-x11. 484s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 484s Preparing to unpack .../00-dbus-x11_1.16.2-2ubuntu2_ppc64el.deb ... 484s Unpacking dbus-x11 (1.16.2-2ubuntu2) ... 484s Selecting previously unselected package desktop-file-utils. 484s Preparing to unpack .../01-desktop-file-utils_0.28-1build1_ppc64el.deb ... 484s Unpacking desktop-file-utils (0.28-1build1) ... 485s Selecting previously unselected package gir1.2-glib-2.0-dev:ppc64el. 485s Preparing to unpack .../02-gir1.2-glib-2.0-dev_2.86.3-4_ppc64el.deb ... 485s Unpacking gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 485s Selecting previously unselected package native-architecture. 485s Preparing to unpack .../03-native-architecture_0.2.6build1_all.deb ... 485s Unpacking native-architecture (0.2.6build1) ... 485s Selecting previously unselected package girepository-tools:ppc64el. 485s Preparing to unpack .../04-girepository-tools_2.86.3-4_ppc64el.deb ... 485s Unpacking girepository-tools:ppc64el (2.86.3-4) ... 485s Selecting previously unselected package gnome-desktop-testing. 485s Preparing to unpack .../05-gnome-desktop-testing_2021.1-5_ppc64el.deb ... 485s Unpacking gnome-desktop-testing (2021.1-5) ... 485s Selecting previously unselected package libfontenc1:ppc64el. 485s Preparing to unpack .../06-libfontenc1_1%3a1.1.8-1build2_ppc64el.deb ... 485s Unpacking libfontenc1:ppc64el (1:1.1.8-1build2) ... 485s Selecting previously unselected package libx11-xcb1:ppc64el. 485s Preparing to unpack .../07-libx11-xcb1_2%3a1.8.12-1build1_ppc64el.deb ... 485s Unpacking libx11-xcb1:ppc64el (2:1.8.12-1build1) ... 485s Selecting previously unselected package libxcb-dri3-0:ppc64el. 485s Preparing to unpack .../08-libxcb-dri3-0_1.17.0-2ubuntu1_ppc64el.deb ... 485s Unpacking libxcb-dri3-0:ppc64el (1.17.0-2ubuntu1) ... 485s Selecting previously unselected package libxcb-present0:ppc64el. 485s Preparing to unpack .../09-libxcb-present0_1.17.0-2ubuntu1_ppc64el.deb ... 485s Unpacking libxcb-present0:ppc64el (1.17.0-2ubuntu1) ... 485s Selecting previously unselected package libxcb-randr0:ppc64el. 485s Preparing to unpack .../10-libxcb-randr0_1.17.0-2ubuntu1_ppc64el.deb ... 485s Unpacking libxcb-randr0:ppc64el (1.17.0-2ubuntu1) ... 485s Selecting previously unselected package libxcb-sync1:ppc64el. 485s Preparing to unpack .../11-libxcb-sync1_1.17.0-2ubuntu1_ppc64el.deb ... 485s Unpacking libxcb-sync1:ppc64el (1.17.0-2ubuntu1) ... 485s Selecting previously unselected package libxcb-xfixes0:ppc64el. 485s Preparing to unpack .../12-libxcb-xfixes0_1.17.0-2ubuntu1_ppc64el.deb ... 485s Unpacking libxcb-xfixes0:ppc64el (1.17.0-2ubuntu1) ... 485s Selecting previously unselected package libxshmfence1:ppc64el. 485s Preparing to unpack .../13-libxshmfence1_1.3.3-1_ppc64el.deb ... 485s Unpacking libxshmfence1:ppc64el (1.3.3-1) ... 485s Selecting previously unselected package mesa-libgallium:ppc64el. 485s Preparing to unpack .../14-mesa-libgallium_25.3.3-1ubuntu1_ppc64el.deb ... 485s Unpacking mesa-libgallium:ppc64el (25.3.3-1ubuntu1) ... 485s Selecting previously unselected package libgbm1:ppc64el. 485s Preparing to unpack .../15-libgbm1_25.3.3-1ubuntu1_ppc64el.deb ... 485s Unpacking libgbm1:ppc64el (25.3.3-1ubuntu1) ... 485s Selecting previously unselected package libgio-2.0-dev-bin. 485s Preparing to unpack .../16-libgio-2.0-dev-bin_2.86.3-4_ppc64el.deb ... 485s Unpacking libgio-2.0-dev-bin (2.86.3-4) ... 485s Selecting previously unselected package libvulkan1:ppc64el. 485s Preparing to unpack .../17-libvulkan1_1.4.335.0-1_ppc64el.deb ... 485s Unpacking libvulkan1:ppc64el (1.4.335.0-1) ... 485s Selecting previously unselected package libgl1-mesa-dri:ppc64el. 485s Preparing to unpack .../18-libgl1-mesa-dri_25.3.3-1ubuntu1_ppc64el.deb ... 485s Unpacking libgl1-mesa-dri:ppc64el (25.3.3-1ubuntu1) ... 485s Selecting previously unselected package libglib2.0-bin. 485s Preparing to unpack .../19-libglib2.0-bin_2.86.3-4_ppc64el.deb ... 485s Unpacking libglib2.0-bin (2.86.3-4) ... 485s Selecting previously unselected package libglib2.0-dev-bin. 485s Preparing to unpack .../20-libglib2.0-dev-bin_2.86.3-4_ppc64el.deb ... 485s Unpacking libglib2.0-dev-bin (2.86.3-4) ... 485s Selecting previously unselected package python3-dbusmock. 485s Preparing to unpack .../21-python3-dbusmock_0.38.1-1_all.deb ... 485s Unpacking python3-dbusmock (0.38.1-1) ... 485s Selecting previously unselected package tzdata-legacy. 485s Preparing to unpack .../22-tzdata-legacy_2025c-3ubuntu3_all.deb ... 485s Unpacking tzdata-legacy (2025c-3ubuntu3) ... 485s Selecting previously unselected package libglib2.0-tests. 485s Preparing to unpack .../23-libglib2.0-tests_2.86.3-4_ppc64el.deb ... 485s Unpacking libglib2.0-tests (2.86.3-4) ... 486s Selecting previously unselected package libxcb-glx0:ppc64el. 486s Preparing to unpack .../24-libxcb-glx0_1.17.0-2ubuntu1_ppc64el.deb ... 486s Unpacking libxcb-glx0:ppc64el (1.17.0-2ubuntu1) ... 486s Selecting previously unselected package libxcb-shm0:ppc64el. 486s Preparing to unpack .../25-libxcb-shm0_1.17.0-2ubuntu1_ppc64el.deb ... 486s Unpacking libxcb-shm0:ppc64el (1.17.0-2ubuntu1) ... 486s Selecting previously unselected package libxxf86vm1:ppc64el. 486s Preparing to unpack .../26-libxxf86vm1_1%3a1.1.4-2_ppc64el.deb ... 486s Unpacking libxxf86vm1:ppc64el (1:1.1.4-2) ... 486s Selecting previously unselected package libglx-mesa0:ppc64el. 486s Preparing to unpack .../27-libglx-mesa0_25.3.3-1ubuntu1_ppc64el.deb ... 486s Unpacking libglx-mesa0:ppc64el (25.3.3-1ubuntu1) ... 486s Selecting previously unselected package x11-common. 486s Preparing to unpack .../28-x11-common_1%3a7.7+24ubuntu1_all.deb ... 486s Unpacking x11-common (1:7.7+24ubuntu1) ... 486s Selecting previously unselected package libice6:ppc64el. 486s Preparing to unpack .../29-libice6_2%3a1.1.1-1build1_ppc64el.deb ... 486s Unpacking libice6:ppc64el (2:1.1.1-1build1) ... 486s Selecting previously unselected package libpixman-1-0:ppc64el. 486s Preparing to unpack .../30-libpixman-1-0_0.46.4-1_ppc64el.deb ... 486s Unpacking libpixman-1-0:ppc64el (0.46.4-1) ... 486s Selecting previously unselected package libsm6:ppc64el. 486s Preparing to unpack .../31-libsm6_2%3a1.2.6-1_ppc64el.deb ... 486s Unpacking libsm6:ppc64el (2:1.2.6-1) ... 486s Selecting previously unselected package libunwind8:ppc64el. 486s Preparing to unpack .../32-libunwind8_1.8.3-0ubuntu1_ppc64el.deb ... 486s Unpacking libunwind8:ppc64el (1.8.3-0ubuntu1) ... 486s Selecting previously unselected package libxt6t64:ppc64el. 486s Preparing to unpack .../33-libxt6t64_1%3a1.2.1-1.3_ppc64el.deb ... 486s Unpacking libxt6t64:ppc64el (1:1.2.1-1.3) ... 486s Selecting previously unselected package libxmu6:ppc64el. 486s Preparing to unpack .../34-libxmu6_2%3a1.1.3-4_ppc64el.deb ... 486s Unpacking libxmu6:ppc64el (2:1.1.3-4) ... 486s Selecting previously unselected package libxpm4:ppc64el. 486s Preparing to unpack .../35-libxpm4_1%3a3.5.17-1build3_ppc64el.deb ... 486s Unpacking libxpm4:ppc64el (1:3.5.17-1build3) ... 486s Selecting previously unselected package libxaw7:ppc64el. 486s Preparing to unpack .../36-libxaw7_2%3a1.0.16-1build1_ppc64el.deb ... 486s Unpacking libxaw7:ppc64el (2:1.0.16-1build1) ... 486s Selecting previously unselected package libxfont2:ppc64el. 486s Preparing to unpack .../37-libxfont2_1%3a2.0.6-2_ppc64el.deb ... 486s Unpacking libxfont2:ppc64el (1:2.0.6-2) ... 486s Selecting previously unselected package libxkbfile1:ppc64el. 486s Preparing to unpack .../38-libxkbfile1_1%3a1.1.0-1build5_ppc64el.deb ... 486s Unpacking libxkbfile1:ppc64el (1:1.1.0-1build5) ... 486s Selecting previously unselected package libxrender1:ppc64el. 486s Preparing to unpack .../39-libxrender1_1%3a0.9.12-1_ppc64el.deb ... 486s Unpacking libxrender1:ppc64el (1:0.9.12-1) ... 486s Selecting previously unselected package libxrandr2:ppc64el. 486s Preparing to unpack .../40-libxrandr2_2%3a1.5.4-1build1_ppc64el.deb ... 486s Unpacking libxrandr2:ppc64el (2:1.5.4-1build1) ... 486s Selecting previously unselected package x11-xkb-utils. 486s Preparing to unpack .../41-x11-xkb-utils_7.7+9build1_ppc64el.deb ... 486s Unpacking x11-xkb-utils (7.7+9build1) ... 486s Selecting previously unselected package xserver-common. 486s Preparing to unpack .../42-xserver-common_2%3a21.1.21-1ubuntu1_all.deb ... 486s Unpacking xserver-common (2:21.1.21-1ubuntu1) ... 486s Selecting previously unselected package libglvnd0:ppc64el. 486s Preparing to unpack .../43-libglvnd0_1.7.0-3_ppc64el.deb ... 486s Unpacking libglvnd0:ppc64el (1.7.0-3) ... 486s Selecting previously unselected package libglx0:ppc64el. 486s Preparing to unpack .../44-libglx0_1.7.0-3_ppc64el.deb ... 486s Unpacking libglx0:ppc64el (1.7.0-3) ... 486s Selecting previously unselected package libgl1:ppc64el. 486s Preparing to unpack .../45-libgl1_1.7.0-3_ppc64el.deb ... 486s Unpacking libgl1:ppc64el (1.7.0-3) ... 486s Selecting previously unselected package xvfb. 486s Preparing to unpack .../46-xvfb_2%3a21.1.21-1ubuntu1_ppc64el.deb ... 486s Unpacking xvfb (2:21.1.21-1ubuntu1) ... 486s Setting up gnome-desktop-testing (2021.1-5) ... 486s Setting up libxcb-dri3-0:ppc64el (1.17.0-2ubuntu1) ... 486s Setting up libpixman-1-0:ppc64el (0.46.4-1) ... 486s Setting up libx11-xcb1:ppc64el (2:1.8.12-1build1) ... 486s Setting up libgio-2.0-dev-bin (2.86.3-4) ... 486s Setting up native-architecture (0.2.6build1) ... 486s Setting up libxcb-xfixes0:ppc64el (1.17.0-2ubuntu1) ... 486s Setting up desktop-file-utils (0.28-1build1) ... 486s Setting up libxpm4:ppc64el (1:3.5.17-1build3) ... 486s Setting up libxrender1:ppc64el (1:0.9.12-1) ... 486s Setting up libglvnd0:ppc64el (1.7.0-3) ... 486s Setting up libxcb-glx0:ppc64el (1.17.0-2ubuntu1) ... 486s Setting up x11-common (1:7.7+24ubuntu1) ... 487s Setting up libglib2.0-bin (2.86.3-4) ... 487s Setting up libxcb-shm0:ppc64el (1.17.0-2ubuntu1) ... 487s Setting up python3-dbusmock (0.38.1-1) ... 487s Setting up libunwind8:ppc64el (1.8.3-0ubuntu1) ... 487s Setting up tzdata-legacy (2025c-3ubuntu3) ... 487s Setting up libxxf86vm1:ppc64el (1:1.1.4-2) ... 487s Setting up libxcb-present0:ppc64el (1.17.0-2ubuntu1) ... 487s Setting up libfontenc1:ppc64el (1:1.1.8-1build2) ... 487s Setting up libxcb-sync1:ppc64el (1.17.0-2ubuntu1) ... 487s Setting up libxrandr2:ppc64el (2:1.5.4-1build1) ... 487s Setting up libvulkan1:ppc64el (1.4.335.0-1) ... 487s Setting up gir1.2-glib-2.0-dev:ppc64el (2.86.3-4) ... 487s Setting up libxshmfence1:ppc64el (1.3.3-1) ... 487s Setting up dbus-x11 (1.16.2-2ubuntu2) ... 487s Setting up libxcb-randr0:ppc64el (1.17.0-2ubuntu1) ... 487s Setting up libxkbfile1:ppc64el (1:1.1.0-1build5) ... 487s Setting up libxfont2:ppc64el (1:2.0.6-2) ... 487s Setting up libice6:ppc64el (2:1.1.1-1build1) ... 487s Setting up mesa-libgallium:ppc64el (25.3.3-1ubuntu1) ... 487s Setting up girepository-tools:ppc64el (2.86.3-4) ... 487s Setting up libgbm1:ppc64el (25.3.3-1ubuntu1) ... 487s Setting up libgl1-mesa-dri:ppc64el (25.3.3-1ubuntu1) ... 487s Setting up libsm6:ppc64el (2:1.2.6-1) ... 487s Setting up libglib2.0-dev-bin (2.86.3-4) ... 487s Setting up libglx-mesa0:ppc64el (25.3.3-1ubuntu1) ... 487s Setting up libglx0:ppc64el (1.7.0-3) ... 487s Setting up libgl1:ppc64el (1.7.0-3) ... 487s Setting up libxt6t64:ppc64el (1:1.2.1-1.3) ... 487s Setting up libglib2.0-tests (2.86.3-4) ... 487s Setting up libxmu6:ppc64el (2:1.1.3-4) ... 487s Setting up libxaw7:ppc64el (2:1.0.16-1build1) ... 487s Setting up x11-xkb-utils (7.7+9build1) ... 487s Setting up xserver-common (2:21.1.21-1ubuntu1) ... 487s Setting up xvfb (2:21.1.21-1ubuntu1) ... 487s Processing triggers for man-db (2.13.1-1) ... 488s Processing triggers for libc-bin (2.42-2ubuntu4) ... 492s autopkgtest [21:45:59]: test installed-tests: [----------------------- 493s Running as: uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),24(cdrom),27(sudo),30(dip),103(lxd) 493s passwd entry: ubuntu:x:1000:1000:Ubuntu:/home/ubuntu:/bin/bash 493s group entry: ubuntu:x:1000: 493s Environment: 493s ADTTMP=/tmp/autopkgtest.lRjasG/autopkgtest_tmp 493s ADT_ARTIFACTS=/tmp/autopkgtest.lRjasG/installed-tests-artifacts 493s ADT_TEST_TRIGGERS=pcre2/10.46-1build1 493s AUTOPKGTEST_ARTIFACTS=/tmp/autopkgtest.lRjasG/installed-tests-artifacts 493s AUTOPKGTEST_TESTBED_ARCH=ppc64el 493s AUTOPKGTEST_TEST_ARCH=ppc64el 493s AUTOPKGTEST_TMP=/tmp/autopkgtest.lRjasG/autopkgtest_tmp 493s DEBIAN_FRONTEND=noninteractive 493s DEBUGINFOD_URLS=https://debuginfod.ubuntu.com 493s DEB_BUILD_OPTIONS=parallel=2 493s GIO_USE_VFS=local 493s GIO_USE_VOLUME_MONITOR=unix 493s HOME=/home/ubuntu 493s LANG=C.UTF-8 493s LOGNAME=ubuntu 493s MAIL=/var/mail/ubuntu 493s OLDPWD=/home/ubuntu 493s PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin 493s PWD=/tmp/autopkgtest.lRjasG/build.eEs/src 493s SHELL=/bin/bash 493s SHLVL=1 493s SUDO_COMMAND=/tmp/autopkgtest-run-wrapper su -s /bin/bash ubuntu -c set -e; exec /tmp/autopkgtest.lRjasG/wrapper.sh --artifacts=/tmp/autopkgtest.lRjasG/installed-tests-artifacts --chdir=/tmp/autopkgtest.lRjasG/build.eEs/src --env=AUTOPKGTEST_TESTBED_ARCH=ppc64el --env=AUTOPKGTEST_TEST_ARCH=ppc64el --env=DEB_BUILD_OPTIONS=parallel=2 --env=DEBIAN_FRONTEND=noninteractive --env=LANG=C.UTF-8 --unset-env=LANGUAGE --unset-env=LC_ADDRESS --unset-env=LC_ALL --unset-env=LC_COLLATE --unset-env=LC_CTYPE --unset-env=LC_IDENTIFICATION --unset-env=LC_MEASUREMENT --unset-env=LC_MESSAGES --unset-env=LC_MONETARY --unset-env=LC_NAME --unset-env=LC_NUMERIC --unset-env=LC_PAPER --unset-env=LC_TELEPHONE --unset-env=LC_TIME --script-pid-file=/tmp/autopkgtest_script_pid --source-profile --stderr=/tmp/autopkgtest.lRjasG/installed-tests-stderr --stdout=/tmp/autopkgtest.lRjasG/installed-tests-stdout --tmp=/tmp/autopkgtest.lRjasG/autopkgtest_tmp --env=ADT_TEST_TRIGGERS=pcre2/10.46-1build1 --make-executable=/tmp/autopkgtest.lRjasG/build.eEs/src/debian/tests/installed-tests -- /tmp/autopkgtest.lRjasG/build.eEs/src/debian/tests/installed-tests 493s SUDO_GID=1000 493s SUDO_HOME=/home/ubuntu 493s SUDO_UID=1000 493s SUDO_USER=ubuntu 493s TERM=linux 493s USER=ubuntu 493s XDG_RUNTIME_DIR=/tmp/autopkgtest.lRjasG/autopkgtest_tmp 493s http_proxy=http://egress.ps7.internal:3128/ 493s https_proxy=http://egress.ps7.internal:3128/ 493s no_proxy=127.0.0.1,127.0.1.1,localhost,localdomain 493s run-with-locales: de_DE=ISO-8859-1... 493s Character set: ISO-8859-1 493s Source file: de_DE 493s Output: /tmp/tmp.nRVqPDjSsV/de_DE 493s run-with-locales: de_DE.utf8... 493s Character set: UTF-8 493s Source file: de_DE 493s Output: /tmp/tmp.nRVqPDjSsV/de_DE.utf8 494s run-with-locales: de_DE@euro.utf8... 494s Character set: UTF-8 494s Source file: de_DE@euro 494s Output: /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8 496s run-with-locales: el_GR.utf8... 496s Character set: UTF-8 496s Source file: el_GR 496s Output: /tmp/tmp.nRVqPDjSsV/el_GR.utf8 497s run-with-locales: en_GB=ISO-8859-1... 497s Character set: ISO-8859-1 497s Source file: en_GB 497s Output: /tmp/tmp.nRVqPDjSsV/en_GB 497s run-with-locales: en_GB.utf8... 497s Character set: UTF-8 497s Source file: en_GB 497s Output: /tmp/tmp.nRVqPDjSsV/en_GB.utf8 499s run-with-locales: en_US=ISO-8859-1... 499s Character set: ISO-8859-1 499s Source file: en_US 499s Output: /tmp/tmp.nRVqPDjSsV/en_US 499s run-with-locales: en_US.utf8... 499s Character set: UTF-8 499s Source file: en_US 499s Output: /tmp/tmp.nRVqPDjSsV/en_US.utf8 500s run-with-locales: es_ES.utf8... 500s Character set: UTF-8 500s Source file: es_ES 500s Output: /tmp/tmp.nRVqPDjSsV/es_ES.utf8 502s run-with-locales: fa_IR=UTF-8... 502s Character set: UTF-8 502s Source file: fa_IR 502s Output: /tmp/tmp.nRVqPDjSsV/fa_IR 503s run-with-locales: fa_IR.utf8... 503s Character set: UTF-8 503s Source file: fa_IR 503s Output: /tmp/tmp.nRVqPDjSsV/fa_IR.utf8 504s run-with-locales: fr_FR.utf8... 504s Character set: UTF-8 504s Source file: fr_FR 504s Output: /tmp/tmp.nRVqPDjSsV/fr_FR.utf8 506s run-with-locales: hr_HR.utf8... 506s Character set: UTF-8 506s Source file: hr_HR 506s Output: /tmp/tmp.nRVqPDjSsV/hr_HR.utf8 507s run-with-locales: ja_JP.utf8... 507s Character set: UTF-8 507s Source file: ja_JP 507s Output: /tmp/tmp.nRVqPDjSsV/ja_JP.utf8 508s run-with-locales: ja_JP.EUC-JP... 508s Character set: EUC-JP 508s Source file: ja_JP 508s Output: /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp 508s run-with-locales: lt_LT.utf8... 508s Character set: UTF-8 508s Source file: lt_LT 508s Output: /tmp/tmp.nRVqPDjSsV/lt_LT.utf8 509s run-with-locales: pl_PL=ISO-8859-2... 509s Character set: ISO-8859-2 509s Source file: pl_PL 509s Output: /tmp/tmp.nRVqPDjSsV/pl_PL 510s run-with-locales: pl_PL.ISO-8859-2... 510s Character set: ISO-8859-2 510s Source file: pl_PL 510s Output: /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592 510s run-with-locales: pl_PL.utf8... 510s Character set: UTF-8 510s Source file: pl_PL 510s Output: /tmp/tmp.nRVqPDjSsV/pl_PL.utf8 512s run-with-locales: ru_RU=ISO-8859-5... 512s Character set: ISO-8859-5 512s Source file: ru_RU 512s Output: /tmp/tmp.nRVqPDjSsV/ru_RU 512s run-with-locales: ru_RU.utf8... 512s Character set: UTF-8 512s Source file: ru_RU 512s Output: /tmp/tmp.nRVqPDjSsV/ru_RU.utf8 513s run-with-locales: sr_RS=UTF-8... 513s Character set: UTF-8 513s Source file: sr_RS 513s Output: /tmp/tmp.nRVqPDjSsV/sr_RS 515s run-with-locales: sr_RS@latin=UTF-8... 515s Character set: UTF-8 515s Source file: sr_RS@latin 515s Output: /tmp/tmp.nRVqPDjSsV/sr_RS@latin 516s run-with-locales: sv_SE=ISO-8859-1... 516s Character set: ISO-8859-1 516s Source file: sv_SE 516s Output: /tmp/tmp.nRVqPDjSsV/sv_SE 516s run-with-locales: sv_SE.utf8... 516s Character set: UTF-8 516s Source file: sv_SE 516s Output: /tmp/tmp.nRVqPDjSsV/sv_SE.utf8 518s run-with-locales: tr_TR=ISO-8859-9... 518s Character set: ISO-8859-9 518s Source file: tr_TR 518s Output: /tmp/tmp.nRVqPDjSsV/tr_TR 518s run-with-locales: tr_TR.utf8... 518s Character set: UTF-8 518s Source file: tr_TR 518s Output: /tmp/tmp.nRVqPDjSsV/tr_TR.utf8 519s run-with-locales: tt_RU=UTF-8... 519s Character set: UTF-8 519s Source file: tt_RU 519s Output: /tmp/tmp.nRVqPDjSsV/tt_RU 521s run-with-locales: tt_RU.utf8... 521s Character set: UTF-8 521s Source file: tt_RU 521s Output: /tmp/tmp.nRVqPDjSsV/tt_RU.utf8 522s run-with-locales: tt_RU@iqtelif=UTF-8... 522s Character set: UTF-8 522s Source file: tt_RU@iqtelif 522s Output: /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif 523s /tmp/tmp.nRVqPDjSsV 523s /tmp/tmp.nRVqPDjSsV/sv_SE 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/sv_SE/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/fr_FR.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/de_DE.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/tt_RU.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/sr_RS 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/sr_RS/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/en_GB 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/en_GB/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/pl_PL 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/pl_PL/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/fa_IR.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/es_ES.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/de_DE@euro.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/tt_RU@iqtelif/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/sv_SE.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/ja_JP.eucjp/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/tt_RU 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/tt_RU/LC_TELEPHONE 523s /tmp/tmp.n1..332 523s # Running test: glib/memory-monitor-dbus.test 523s RVqPDjSsV/en_US.utf8 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/en_US.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/pl_PL.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/el_GR.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/sr_RS@latin/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/pl_PL.iso88592/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/hr_HR.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/en_US 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/en_US/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/fa_IR 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/fa_IR/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/tr_TR.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/tr_TR 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/tr_TR/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/ru_RU.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/lt_LT.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/ja_JP.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/de_DE 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/de_DE/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/en_GB.utf8/LC_TELEPHONE 523s /tmp/tmp.nRVqPDjSsV/ru_RU 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_TIME 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_PAPER 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_MEASUREMENT 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_MESSAGES/SYS_LC_MESSAGES 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_COLLATE 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_NAME 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_MONETARY 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_CTYPE 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_ADDRESS 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_NUMERIC 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_IDENTIFICATION 523s /tmp/tmp.nRVqPDjSsV/ru_RU/LC_TELEPHONE 523s TAP version 13 523s ok 1 __main__.TestLowMemoryMonitor.test_low_memory_warning_signal # SKIP https://bugs.debian.org/995178 523s 1..1 523s ok - glib/memory-monitor-dbus.test 523s # Running test: glib/memchunk.test 523s TAP version 14 523s # random seed: R02S9a470310d5216e366b01f94ceac6eff2 523s 1..1 523s # Start of memchunk tests 523s ok - glib/memchunk.test 523s # Running test: glib/deftype.test 523s ok 1 /memchunk/basic 523s # End of memchunk tests 523s ok - glib/deftype.test 523s # Running test: glib/null-settings-backend.test 523s ok - glib/null-settings-backend.test 523s TAP version 14 523s # random seed: R02S69e6ede9f8b2b1d1f16fa84079c6d89c 523s 1..1 523s # Start of null-settings-backend tests 523s ok 1 /null-settings-backend/extension-point-registered 523s # End of null-settings-backend tests 523s # Running test: glib/signals-refcount4.test 523s TAP version 14 523s # random seed: R02S9747ff8fa2f00b1d8bb894ac5eb3168b 523s 1..1 523s # Start of gobject tests 523s # Start of refcount tests 523s # init 0xa89cffed4a0 523s # 523s # init 0xa89cffe5580 523s # 528s ok - glib/signals-refcount4.test 528s # Running test: glib/power-profile-monitor-dbus.test 528s # dispose 0xa89cffed4a0! 528s # 528s # dispose 0xa89cffe5580! 528s # 528s ok 1 /gobject/refcount/signals 528s # slow test /gobject/refcount/signals executed in 5.00 secs 528s # End of refcount tests 528s # End of gobject tests 529s TAP version 13 529s ok 1 __main__.TestPowerProfileMonitor.test_power_profile_power_saver_enabled 529s 1..1 529s ok - glib/power-profile-monitor-dbus.test 529s # Running test: glib/logging.test 529s TAP version 14 529s # random seed: R02Sba358409989631114eb8f2153e229798 529s 1..20 529s # Start of logging tests 529s # Executing: glib/logging.test 529s ok 1 /logging/default-handler 529s ok 2 /logging/journald-handler 529s ok 3 /logging/warnings 529s ok 4 /logging/fatal-log-mask 529s ok 5 /logging/always-fatal 529s # bu-DEBUG: message 529s # ba-DEBUG: message 529s # ba-INFO: message 529s ok 6 /logging/set-handler 529s ok 7 /logging/print-handler 529s ok 8 /logging/printerr-handler 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=653052 529s # The Log Message Handler 529s # 529s # The Good Fail Message Handler 529s # 529s ok 9 /logging/653052 529s ok 10 /logging/gibberish 529s ok - glib/logging.test 529s # Running test: glib/memory-output-stream.test 529s # Start of default-handler tests 529s # Start of subprocess tests 529s # End of subprocess tests 529s # End of default-handler tests 529s # End of logging tests 529s # Start of structured-logging tests 529s ok 11 /structured-logging/no-state 529s ok 12 /structured-logging/some-state 529s # /structured-logging/recursion-overflow summary: Test that g_log_structured always sets n_fields correctly. 529s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3760 529s ok 13 /structured-logging/recursion-overflow 529s ok 14 /structured-logging/robustness 529s ok 15 /structured-logging/roundtrip1 529s ok 16 /structured-logging/roundtrip2 529s ok 17 /structured-logging/roundtrip3 529s ok 18 /structured-logging/variant1 529s ok 19 /structured-logging/variant2 529s ok 20 /structured-logging/set-writer-func-twice 529s # End of structured-logging tests 529s TAP version 14 529s # random seed: R02S6809037016e1fa99835ea28f654b9da9 529s 1..10 529s # Start of memory-output-stream tests 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540423 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=720080 529s ok 1 /memory-output-stream/truncate 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540459 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540461 529s ok 2 /memory-output-stream/get-data-size 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=605733 529s ok 3 /memory-output-stream/properties 529s ok 4 /memory-output-stream/write-bytes 529s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2471 529s ok 5 /memory-output-stream/write-null 529s ok 6 /memory-output-stream/writev 529s ok 7 /memory-output-stream/writev_nonblocking 529s ok 8 /memory-output-stream/steal_as_bytes 529s # Start of seek tests 529s ok 9 /memory-output-stream/seek/fixed 529s ok 10 /memory-output-stream/seek/resizable 529s # End of seek tests 529s # End of memory-output-stream tests 529s TAP version 14 529s # random seed: R02S01625dc4218db0003ff6c4a55e17690c 529s 1..2 529s # Start of mem tests 529s ok - glib/memory-output-stream.test 529s # Running test: glib/mem-overflow.test 529s ok - glib/mem-overflow.test 529s ok 1 /mem/overflow 529s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=615379 529s ok 2 /mem/empty-alloc 529s # Start of overflow tests 529s # Start of subprocess tests 529s # End of subprocess tests 529s # End of overflow tests 529s # Start of empty-alloc tests 529s # End of empty-alloc tests 529s # End of mem tests 529s # Running test: glib/dump.test 529s TAP version 14 529s # random seed: R02S77a5c39957404be5e9301fb49e79084f 529s 1..4 529s # Start of dump tests 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/system-config1:/tmp/test_dump_BB0OK3/dump/empty-file/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/system-data1:/tmp/test_dump_BB0OK3/dump/empty-file/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_BB0OK3/dump/empty-file/.dirs/runtime 529s ok 1 /dump/empty-file 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/system-config1:/tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/system-data1:/tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_BB0OK3/dump/missing-get-type/.dirs/runtime 529s Invalid GType function: 'does_not_exist_get_type' 529s ok 2 /dump/missing-get-type 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/system-config1:/tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/system-data1:/tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_BB0OK3/dump/missing-quark/.dirs/runtime 529s Invalid error quark function: 'does_not_exist_error' 529s ok 3 /dump/missing-quark 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_BB0OK3/dump/basic/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_BB0OK3/dump/basic/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_BB0OK3/dump/basic/.dirs/system-config1:/tmp/test_dump_BB0OK3/dump/basic/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_BB0OK3/dump/basic/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_BB0OK3/dump/basic/.dirs/system-data1:/tmp/test_dump_BB0OK3/dump/basic/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_BB0OK3/dump/basic/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_BB0OK3/dump/basic/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_BB0OK3/dump/basic/.dirs/runtime 529s ok 4 /dump/basic 529s # End of dump tests 529s ok - glib/dump.test 529s # Running test: glib/gdbus-message.test 529s ok - glib/gdbus-message.test 529s TAP version 14 529s # random seed: R02S02ae13f0057fa15eaa5ff8902ee034c6 529s 1..3 529s # Start of gdbus tests 529s # Start of message tests 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/system-config1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/system-data1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_MKQOK3/gdbus/message/lock/.dirs/runtime 529s ok 1 /gdbus/message/lock 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/system-config1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/system-data1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_MKQOK3/gdbus/message/copy/.dirs/runtime 529s ok 2 /gdbus/message/copy 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/system-config1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/system-data1:/tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_MKQOK3/gdbus/message/bytes-needed/.dirs/runtime 529s # Vector: 0 529s # Vector: 1 529s # Vector: 2 529s # Vector: 3 529s # Vector: 4 529s # Vector: 5 529s ok 3 /gdbus/message/bytes-needed 529s # End of message tests 529s # End of gdbus tests 529s # Running test: glib/cxx.test 529s TAP version 14 529s # random seed: R02Se100e5c754479a3ac9629497c02c8c73 529s 1..2 529s # Start of gtask tests 529s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 529s ok 1 /gtask/name 529s # Start of name tests 529s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 529s ok 2 /gtask/name/macro-wrapper 529s # End of name tests 529s # End of gtask tests 529s ok - glib/cxx.test 529s # Running test: glib/gdbus-proxy-well-known-name.test 529s TAP version 14 529s # random seed: R02S656deb8e917af9dc718c1c81e0ad8754 529s 1..1 529s # Start of gdbus tests 529s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/home 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/cache 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/system-config1:/tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/system-config2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/config 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/system-data1:/tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/system-data2 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/data 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/state 529s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-well-known-name_NXIOK3/gdbus/proxy-well-known-name/.dirs/runtime 529s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 529s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 529s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 529s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 529s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 529s ok 1 /gdbus/proxy-well-known-name 529s # End of gdbus tests 529s ok - glib/gdbus-proxy-well-known-name.test 529s # Running test: glib/deprecated-properties.test 529s TAP version 14 529s # random seed: R02S8231926b1994342191477eaa350a0c5e 529s 1..3 529s # Start of deprecated-properties tests 529s ok 1 /deprecated-properties/construct 529s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2748 529s ok 2 /deprecated-properties/default-construct 529s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2748 529s ok 3 /deprecated-properties/set 529s # End of deprecated-properties tests 529s ok - glib/deprecated-properties.test 529s # Running test: glib/ir-parser.test 529s TAP version 14 529s ok - glib/ir-parser.test 529s # random seed: R02S463c6570d7413479f207bcabdddfc572 529s 1..1 529s # Start of ir-parser tests 529s # /ir-parser/type-parsing summary: Test parsing different valid and invalid types 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: pushing node 1 dummy 529s # GLib-GIRepository-DEBUG: Parsed type: GLib.Error => 20 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: popping node 1 dummy 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: pushing node 1 dummy 529s # GLib-GIRepository-DEBUG: Parsed type: GLib.Error => 20 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: popping node 1 dummy 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: 529s # GLib-GIRepository-DEBUG: pushing node 1 dummy 529s # GLib-GIRepository-DEBUG: Failed to parse type: 'GLib.Error 3 replacements, "foo baz foo baz foo baz foobazbaz" 554s # 1: Replacing "baz" with "bar" (limit 3) in "foo baz foo baz foo baz foobazbaz" 554s # -> 3 replacements, "foo bar foo bar foo bar foobazbaz" 554s # 2: Replacing "foobar" with "bar" (limit 1) in "foo bar foo bar foo bar foobazbaz" 554s # -> 0 replacements, "foo bar foo bar foo bar foobazbaz" 554s # 3: Replacing "a" with "abcdefghijkl" (limit 0) in "aaaaaaaa" 554s # -> 8 replacements, "abcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijkl" 554s # 4: Replacing "$LIB" with "lib32" (limit 0) in "/usr/$LIB/libMangoHud.so" 554s # -> 1 replacements, "/usr/lib32/libMangoHud.so" 554s # 5: Replacing "o" with "" (limit 0) in "food for foals" 554s # -> 4 replacements, "fd fr fals" 554s # 6: Replacing "a" with "aaa" (limit 0) in "aaa" 554s # -> 3 replacements, "aaaaaaaaa" 554s # 7: Replacing "a" with "" (limit 0) in "aaa" 554s # -> 3 replacements, "" 554s # 8: Replacing "aa" with "bb" (limit 0) in "aaa" 554s # -> 1 replacements, "bba" 554s # 9: Replacing "" with "bar" (limit 0) in "foo" 554s # -> 4 replacements, "barfbarobarobar" 554s # 10: Replacing "" with "bar" (limit 1) in "foo" 554s # -> 1 replacements, "barfoo" 554s # 11: Replacing "" with "bar" (limit 2) in "foo" 554s # -> 2 replacements, "barfbaroo" 554s # 12: Replacing "" with "bar" (limit 3) in "foo" 554s # -> 3 replacements, "barfbarobaro" 554s # 13: Replacing "" with "bar" (limit 4) in "foo" 554s # -> 4 replacements, "barfbarobarobar" 554s # 14: Replacing "" with "bar" (limit 5) in "foo" 554s # -> 4 replacements, "barfbarobarobar" 554s # 15: Replacing "" with "x" (limit 0) in "" 554s # -> 1 replacements, "x" 554s # 16: Replacing "" with "" (limit 0) in "" 554s # -> 1 replacements, "" 554s # 17: Replacing "" with "aaaaaaaaaaaa" (limit 0) in "bbbbbbbbb" 554s # -> 10 replacements, "aaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaa" 554s ok 20 /string/replace 554s ok 21 /string/steal 554s ok 22 /string/new-take 554s ok 23 /string/copy 554s ok 24 /string/sized-new 554s # Start of new-take tests 554s ok 25 /string/new-take/null 554s # End of new-take tests 554s # End of string tests 554s TAP version 14 554s # random seed: R02S052268a1dc2b40133830c686b89b477c 554s 1..7 554s # Start of interface tests 554s # Start of properties tests 554s ok 1 /interface/properties/set 554s ok 2 /interface/properties/notify 554s ok 3 /interface/properties/find-overridden 554s ok 4 /interface/properties/list-overridden 554s ok 5 /interface/properties/find-interface 554s ok 6 /interface/properties/list-interface 554s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=637738 554s ok 7 /interface/properties/not-overridden 554s # End of properties tests 554s # End of interface tests 554s TAP version 14 554s # random seed: R02S211b1e7c80ac053206063cba2c069900 554s 1..3 554s # Start of debug-controller tests 554s # Start of dbus tests 554s # /debug-controller/dbus/basic summary: Smoketest for construction and setting of a #GDebugControllerDBus. 554s # GLib-GIO-DEBUG: Debug output enabled 554s # GLib-GIO-DEBUG: Debug output disabled 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s ok 1 /debug-controller/dbus/basic 554s # /debug-controller/dbus/duplicate summary: Test that creating a second #GDebugControllerDBus on the same D-Bus connection fails. 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 554s ok 2 /debug-controller/dbus/duplicate 554s # /debug-controller/dbus/properties summary: Test getting and setting properties on a #GDebugControllerDBus. 554s ok 3 /debug-controller/dbus/properties # SKIP https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2486#note_1384102 554s # End of dbus tests 554s # End of debug-controller tests 554s TAP version 14 554s # random seed: R02Sd5280dac6b35b7d60c7fbf22d7a96e3e 554s 1..2 554s # Start of uuid tests 554s ok 1 /uuid/string 554s ok 2 /uuid/random 554s # End of uuid tests 554s TAP version 14 554s # random seed: R02S1c17fef53e7e28590cbbac47ffe658fb 554s 1..3 554s # Start of gvfs tests 554s ok 1 /gvfs/local 554s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 554s ok 2 /gvfs/register-scheme 554s # Start of resource tests 554s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3090 554s # /gvfs/resource/malformed-escaping summary: Test that g_vfs_get_file_for_uri() returns an invalid file for an invalid URI 554s ok 3 /gvfs/resource/malformed-escaping 554s # End of resource tests 554s # End of gvfs tests 554s TAP version 14 554s # random seed: R02S124fa3992f2e09508d34cb06aa72a894 554s 1..1 554s # Start of gdbus tests 554s # Start of proxy tests 554s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/home 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/cache 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/system-config1:/tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/system-config2 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/config 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/system-data1:/tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/system-data2 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/data 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/state 554s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-threads_Z2TKK3/gdbus/proxy/vs-threads/.dirs/runtime 555s ok - glib/gdbus-proxy-threads.test 555s ok 1 /gdbus/proxy/vs-threads 555s # slow test /gdbus/proxy/vs-threads executed in 1.10 secs 555s # End of proxy tests 555s # End of gdbus tests 555s cleaning up pid 2885 555s # Running test: glib/thread-pool.test 555s TAP version 14 555s # random seed: R02S76dc45f26394cbb66a2ef8edb87f7abd 555s 1..6 555s # Start of thread_pool tests 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3712 555s ok 1 /thread_pool/pool_fail 555s # /thread_pool/shared summary: Tests that a shared, non-exclusive thread pool generally works. 555s ok 2 /thread_pool/shared 555s ok - glib/thread-pool.test 555s # Running test: glib/regex.test 555s # /thread_pool/exclusive summary: Tests that an exclusive thread pool generally works. 555s ok 3 /thread_pool/exclusive 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012 555s # /thread_pool/create_shared_after_exclusive summary: Tests that creating a shared pool after an exclusive one works. 555s ok 4 /thread_pool/create_shared_after_exclusive 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/121 555s ok 5 /thread_pool/create_full 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012 555s # /thread_pool/create_exclusive_after_shared summary: Tests that creating an exclusive pool after a shared one works. 555s ok 6 /thread_pool/create_exclusive_after_shared 555s # End of thread_pool tests 555s TAP version 14 555s # random seed: R02S37d9ecc41f1c2177bc33fdad93576bd8 555s 1..849 555s # Start of regex tests 555s ok 1 /regex/properties 555s ok 2 /regex/class 555s ok 3 /regex/lookahead 555s ok 4 /regex/lookbehind 555s ok 5 /regex/subpattern 555s ok 6 /regex/condition 555s ok 7 /regex/recursion 555s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640489 555s ok 8 /regex/multiline 555s ok 9 /regex/explicit-crlf 555s ok 10 /regex/max-lookbehind 555s ok 11 /regex/compile-errors 555s ok 12 /regex/jit-unsupported-matching 555s # /regex/unmatched-named-subpattern summary: Test that unmatched subpatterns can still be queried 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2881 555s ok 13 /regex/unmatched-named-subpattern 555s # /regex/compiled-regex-after-jit-failure summary: Test that failed OPTIMIZE regex doesn't cause issues on subsequent matches 555s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2824 555s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 555s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 555s ok 14 /regex/compiled-regex-after-jit-failure 555s # Start of new tests 555s ok 15 /regex/new/1 555s ok 16 /regex/new/2 555s ok 17 /regex/new/3 555s ok 18 /regex/new/4 555s ok 19 /regex/new/5 555s ok 20 /regex/new/6 555s ok 21 /regex/new/7 555s ok 22 /regex/new/8 555s ok 23 /regex/new/9 555s ok 24 /regex/new/10 555s ok 25 /regex/new/11 555s ok 26 /regex/new/12 555s ok 27 /regex/new/13 555s ok 28 /regex/new/14 555s ok 29 /regex/new/15 555s ok 30 /regex/new/16 555s ok 31 /regex/new/17 555s ok 32 /regex/new/18 555s ok 33 /regex/new/19 555s ok 34 /regex/new/71 555s ok 35 /regex/new/81 555s ok 36 /regex/new/83 555s # End of new tests 555s # Start of new-check-flags tests 555s ok 37 /regex/new-check-flags/20 555s ok 38 /regex/new-check-flags/21 555s ok 39 /regex/new-check-flags/22 555s ok 40 /regex/new-check-flags/23 555s ok 41 /regex/new-check-flags/24 555s ok 42 /regex/new-check-flags/25 555s ok 43 /regex/new-check-flags/26 555s ok 44 /regex/new-check-flags/27 555s ok 45 /regex/new-check-flags/28 555s ok 46 /regex/new-check-flags/29 555s ok 47 /regex/new-check-flags/30 555s ok 48 /regex/new-check-flags/31 555s ok 49 /regex/new-check-flags/32 555s ok 50 /regex/new-check-flags/33 555s ok 51 /regex/new-check-flags/34 555s ok 52 /regex/new-check-flags/35 555s ok 53 /regex/new-check-flags/36 555s # End of new-check-flags tests 555s # Start of new-fail tests 555s # Compiling pattern /(/ failed with error: Error while compiling regular expression ‘(’ at char 1: missing terminating ) 555s ok 54 /regex/new-fail/37 555s # Compiling pattern /)/ failed with error: Error while compiling regular expression ‘)’ at char 0: missing terminating ) 555s ok 55 /regex/new-fail/38 555s # Compiling pattern /[/ failed with error: Error while compiling regular expression ‘[’ at char 1: missing terminating ] for character class 555s ok 56 /regex/new-fail/39 555s # Compiling pattern /*/ failed with error: Error while compiling regular expression ‘*’ at char 0: nothing to repeat 555s ok 57 /regex/new-fail/40 555s # Compiling pattern /?/ failed with error: Error while compiling regular expression ‘?’ at char 0: nothing to repeat 555s ok 58 /regex/new-fail/41 555s # Compiling pattern /(?Px)|(?Py)/ failed with error: Error while compiling regular expression ‘(?Px)|(?Py)’ at char 15: two named subpatterns have the same name 555s ok 59 /regex/new-fail/42 555s # Compiling pattern /a\/ failed with error: Error while compiling regular expression ‘a\’ at char 2: \ at end of pattern 555s ok 60 /regex/new-fail/43 555s # Compiling pattern /a\c/ failed with error: Error while compiling regular expression ‘a\c’ at char 3: \c at end of pattern 555s ok 61 /regex/new-fail/44 555s # Compiling pattern /a\l/ failed with error: Error while compiling regular expression ‘a\l’ at char 3: unrecognized character following \ 555s ok 62 /regex/new-fail/45 555s # Compiling pattern /a{4,2}/ failed with error: Error while compiling regular expression ‘a{4,2}’ at char 5: numbers out of order in {} quantifier 555s ok 63 /regex/new-fail/46 555s # Compiling pattern /a{999999,}/ failed with error: Error while compiling regular expression ‘a{999999,}’ at char 8: number too big in {} quantifier 555s ok 64 /regex/new-fail/47 555s # Compiling pattern /[a-z/ failed with error: Error while compiling regular expression ‘[a-z’ at char 4: missing terminating ] for character class 555s ok 65 /regex/new-fail/48 555s # Compiling pattern /[\B]/ failed with error: Error while compiling regular expression ‘[\B]’ at char 2: invalid escape sequence in character class 555s ok 66 /regex/new-fail/49 555s # Compiling pattern /[z-a]/ failed with error: Error while compiling regular expression ‘[z-a]’ at char 3: range out of order in character class 555s ok 67 /regex/new-fail/50 555s # Compiling pattern /^[[:alnum:]-_.]+$/ failed with error: Error while compiling regular expression ‘^[[:alnum:]-_.]+$’ at char 12: invalid range in character class 555s ok 68 /regex/new-fail/51 555s # Compiling pattern /{2,4}/ failed with error: Error while compiling regular expression ‘{2,4}’ at char 4: nothing to repeat 555s ok 69 /regex/new-fail/52 555s # Compiling pattern /a(?u)/ failed with error: Error while compiling regular expression ‘a(?u)’ at char 3: unrecognized character after (? or (?- 555s ok 70 /regex/new-fail/53 555s # Compiling pattern /a(?<$foo)bar/ failed with error: Error while compiling regular expression ‘a(?<$foo)bar’ at char 4: missing subpattern name after (?& 555s ok 71 /regex/new-fail/54 555s # Compiling pattern /a[:alpha:]b/ failed with error: Error while compiling regular expression ‘a[:alpha:]b’ at char 1: POSIX named classes are supported only within a class 555s ok 72 /regex/new-fail/55 555s # Compiling pattern /a(b/ failed with error: Error while compiling regular expression ‘a(b’ at char 3: missing terminating ) 555s ok 73 /regex/new-fail/56 555s # Compiling pattern /a)b/ failed with error: Error while compiling regular expression ‘a)b’ at char 1: missing terminating ) 555s ok 74 /regex/new-fail/57 555s # Compiling pattern /a(?R/ failed with error: Error while compiling regular expression ‘a(?R’ at char 4: missing terminating ) 555s ok 75 /regex/new-fail/58 555s # Compiling pattern /a(?-54/ failed with error: Error while compiling regular expression ‘a(?-54’ at char 6: reference to non-existent subpattern 555s ok 76 /regex/new-fail/59 555s # Compiling pattern /(ab\2)/ failed with error: Error while compiling regular expression ‘(ab\2)’ at char 4: reference to non-existent subpattern 555s ok 77 /regex/new-fail/60 555s # Compiling pattern /a(?#abc/ failed with error: Error while compiling regular expression ‘a(?#abc’ at char 7: missing ) after comment 555s ok 78 /regex/new-fail/61 555s # Compiling pattern /(?<=a+)b/ failed with error: Error while compiling regular expression ‘(?<=a+)b’ at char 0: lookbehind assertion is not fixed length 555s ok 79 /regex/new-fail/62 555s # Compiling pattern /(?(1?)a|b)/ failed with error: Error while compiling regular expression ‘(?(1?)a|b)’ at char 4: malformed number or name after (?( 555s ok 80 /regex/new-fail/63 555s # Compiling pattern /(a)(?(1)a|b|c)/ failed with error: Error while compiling regular expression ‘(a)(?(1)a|b|c)’ at char 3: conditional group contains more than two branches 555s ok 81 /regex/new-fail/64 555s # Compiling pattern /(?(?i))/ failed with error: Error while compiling regular expression ‘(?(?i))’ at char 2: assertion expected after (?( 555s ok 82 /regex/new-fail/65 555s # Compiling pattern /a[[:fubar:]]b/ failed with error: Error while compiling regular expression ‘a[[:fubar:]]b’ at char 11: unknown POSIX class name 555s ok 83 /regex/new-fail/66 555s # Compiling pattern /[[.ch.]]/ failed with error: Error while compiling regular expression ‘[[.ch.]]’ at char 7: POSIX collating elements are not supported 555s ok 84 /regex/new-fail/67 555s # Compiling pattern /\x{110000}/ failed with error: Error while compiling regular expression ‘\x{110000}’ at char 9: character value in \x{...} sequence is too large 555s ok 85 /regex/new-fail/68 555s # Compiling pattern /^(?(0)f|b)oo/ failed with error: Error while compiling regular expression ‘^(?(0)f|b)oo’ at char 5: reference to non-existent subpattern 555s ok 86 /regex/new-fail/69 555s # Compiling pattern /(?<=\C)X/ failed with error: Error while compiling regular expression ‘(?<=\C)X’ at char 0: \C not allowed in lookbehind assertion 555s ok 87 /regex/new-fail/70 555s # Compiling pattern /(?(?foo)\gfoo)\geks)(?Peccs)/ failed with error: Error while compiling regular expression ‘(?Peks)(?Peccs)’ at char 16: two named subpatterns have the same name 555s ok 90 /regex/new-fail/74 555s # Compiling pattern /\666/ failed with error: Error while compiling regular expression ‘\666’ at char 4: octal value is greater than \377 555s ok 91 /regex/new-fail/75 555s # Compiling pattern /^(?(DEFINE) abc | xyz ) / failed with error: Error while compiling regular expression ‘^(?(DEFINE) abc | xyz ) ’ at char 4: DEFINE group contains more than one branch 555s ok 92 /regex/new-fail/76 555s # Compiling pattern /a/ failed with error: Invalid newline flags 555s ok 93 /regex/new-fail/77 555s # Compiling pattern /^(a)\g"3/ failed with error: Error while compiling regular expression ‘^(a)\g"3’ at char 6: \g is not followed by a braced, angle-bracketed, or quoted name or number, or by a plain number 555s ok 94 /regex/new-fail/78 555s # Compiling pattern /^(a)\g{3/ failed with error: Error while compiling regular expression ‘^(a)\g{3’ at char 6: \g is not followed by a braced, angle-bracketed, or quoted name or number, or by a plain number 555s ok 95 /regex/new-fail/79 555s # Compiling pattern /^(a)\g{0}/ failed with error: Error while compiling regular expression ‘^(a)\g{0}’ at char 9: reference to non-existent subpattern 555s ok 96 /regex/new-fail/80 555s # Compiling pattern /a(*FOOBAR)b/ failed with error: Error while compiling regular expression ‘a(*FOOBAR)b’ at char 9: (*VERB) not recognized 555s ok 97 /regex/new-fail/82 555s # Compiling pattern /(?)(?&)/ failed with error: Error while compiling regular expression ‘(?)(?&)’ at char 9: missing subpattern name after (?& 555s ok 98 /regex/new-fail/84 555s # Compiling pattern /(?+-a)/ failed with error: Error while compiling regular expression ‘(?+-a)’ at char 2: a numbered reference must not be zero 555s ok 99 /regex/new-fail/85 555s # Compiling pattern /(?|(?A)|(?B))/ failed with error: Error while compiling regular expression ‘(?|(?A)|(?B))’ at char 16: different names for subpatterns of the same number are not allowed 555s ok 100 /regex/new-fail/86 555s # Compiling pattern /a(*MARK)b/ failed with error: Error while compiling regular expression ‘a(*MARK)b’ at char 7: (*MARK) must have an argument 555s ok 101 /regex/new-fail/87 555s # Compiling pattern /^\c€/ failed with error: Error while compiling regular expression ‘^\c€’ at char 3: \c must be followed by an ASCII character 555s ok 102 /regex/new-fail/88 555s # Compiling pattern /\k/ failed with error: Error while compiling regular expression ‘\k’ at char 2: \k is not followed by a braced, angle-bracketed, or quoted name 555s ok 103 /regex/new-fail/89 555s # Compiling pattern /a[\NB]c/ failed with error: Error while compiling regular expression ‘a[\NB]c’ at char 4: \N is not supported in a class 555s ok 104 /regex/new-fail/90 555s # Compiling pattern /(*:0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEFG)XX/ failed with error: Error while compiling regular expression ‘(*:0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEFG)XX’ at char 260: name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN) 555s ok 105 /regex/new-fail/91 555s # Compiling pattern /(?i-x)((?:(?i-x)[^\x00\t\n\f\r "'/<=>\x{007F}-\x{009F}\x{FDD0}-\x{FDEF}\x{FFFE}\x{FFFF}\x{1FFFE}\x{1FFFF}\x{2FFFE}\x{2FFFF}\x{3FFFE}\x{3FFFF}\x{4FFFE}\x{4FFFF}\x{5FFFE}\x{5FFFF}\x{6FFFE}\x{6FFFF}\x{7FFFE}\x{7FFFF}\x{8FFFE}\x{8FFFF}\x{9FFFE}\x{9FFFF}\x{AFFFE}\x{AFFFF}\x{BFFFE}\x{BFFFF}\x{CFFFE}\x{CFFFF}\x{DFFFE}\x{DFFFF}\x{EFFFE}\x{EFFFF}\x{FFFFE}\x{FFFFF}\x{10FFFE}\x{10FFFF}]+)\s*=\s*)(\")/ failed with error: Error while compiling regular expression ‘(?i-x)((?:(?i-x)[^\x00\t\n\f\r "'/<=>\x{007F}-\x{009F}\x{FDD0}-\x{FDEF}\x{FFFE}\x{FFFF}\x{1FFFE}\x{1FFFF}\x{2FFFE}\x{2FFFF}\x{3FFFE}\x{3FFFF}\x{4FFFE}\x{4FFFF}\x{5FFFE}\x{5FFFF}\x{6FFFE}\x{6FFFF}\x{7FFFE}\x{7FFFF}\x{8FFFE}\x{8FFFF}\x{9FFFE}\x{9FFFF}\x{AFFFE}\x{AFFFF}\x{BFFFE}\x{BFFFF}\x{CFFFE}\x{CFFFF}\x{DFFFE}\x{DFFFF}\x{EFFFE}\x{EFFFF}\x{FFFFE}\x{FFFFF}\x{10FFFE}\x{10FFFF}]+)\s*=\s*)(\")’ at char 61: character value in \x{...} sequence is too large 555s ok 106 /regex/new-fail/92 555s # End of new-fail tests 555s # Start of match-simple tests 555s ok 107 /regex/match-simple/93 555s ok 108 /regex/match-simple/94 555s ok 109 /regex/match-simple/95 555s ok 110 /regex/match-simple/96 555s ok 111 /regex/match-simple/97 555s ok 112 /regex/match-simple/98 555s ok 113 /regex/match-simple/99 555s ok 114 /regex/match-simple/100 555s ok 115 /regex/match-simple/101 555s ok 116 /regex/match-simple/102 555s ok 117 /regex/match-simple/103 555s ok 118 /regex/match-simple/104 555s ok 119 /regex/match-simple/105 555s ok 120 /regex/match-simple/106 555s ok 121 /regex/match-simple/107 555s ok 122 /regex/match-simple/108 555s ok 123 /regex/match-simple/109 555s ok 124 /regex/match-simple/110 555s ok 125 /regex/match-simple/111 555s ok 126 /regex/match-simple/112 555s ok 127 /regex/match-simple/113 555s ok 128 /regex/match-simple/114 555s ok 129 /regex/match-simple/115 555s ok 130 /regex/match-simple/116 555s ok 131 /regex/match-simple/117 555s ok 132 /regex/match-simple/118 555s ok 133 /regex/match-simple/119 555s ok 134 /regex/match-simple/120 555s ok 135 /regex/match-simple/121 555s ok 136 /regex/match-simple/122 555s ok 137 /regex/match-simple/123 555s ok 138 /regex/match-simple/124 555s ok 139 /regex/match-simple/125 555s ok 140 /regex/match-simple/126 555s ok 141 /regex/match-simple/127 555s ok 142 /regex/match-simple/128 555s ok 143 /regex/match-simple/129 555s ok 144 /regex/match-simple/130 555s ok 145 /regex/match-simple/131 555s ok 146 /regex/match-simple/132 555s ok 147 /regex/match-simple/133 555s ok 148 /regex/match-simple/134 555s ok 149 /regex/match-simple/135 555s ok 150 /regex/match-simple/136 555s ok 151 /regex/match-simple/137 555s ok 152 /regex/match-simple/138 555s ok 153 /regex/match-simple/139 555s ok 154 /regex/match-simple/140 555s ok 155 /regex/match-simple/141 555s ok 156 /regex/match-simple/142 555s ok 157 /regex/match-simple/143 555s ok 158 /regex/match-simple/144 555s ok 159 /regex/match-simple/145 555s ok 160 /regex/match-simple/146 555s ok 161 /regex/match-simple/147 555s ok 162 /regex/match-simple/148 555s ok 163 /regex/match-simple/149 555s ok 164 /regex/match-simple/150 555s ok 165 /regex/match-simple/151 555s ok 166 /regex/match-simple/152 555s ok 167 /regex/match-simple/153 555s ok 168 /regex/match-simple/154 555s ok 169 /regex/match-simple/155 555s ok 170 /regex/match-simple/156 555s ok 171 /regex/match-simple/157 555s ok 172 /regex/match-simple/158 555s ok 173 /regex/match-simple/159 555s ok 174 /regex/match-simple/160 555s ok 175 /regex/match-simple/161 555s ok 176 /regex/match-simple/162 555s ok 177 /regex/match-simple/163 555s ok 178 /regex/match-simple/164 555s ok 179 /regex/match-simple/165 555s # End of match-simple tests 555s # Start of match-simple-optimized tests 555s ok 180 /regex/match-simple-optimized/93 555s ok 181 /regex/match-simple-optimized/94 555s ok 182 /regex/match-simple-optimized/95 555s ok 183 /regex/match-simple-optimized/96 555s ok 184 /regex/match-simple-optimized/97 555s ok 185 /regex/match-simple-optimized/98 555s ok 186 /regex/match-simple-optimized/99 555s ok 187 /regex/match-simple-optimized/100 555s ok 188 /regex/match-simple-optimized/101 555s ok 189 /regex/match-simple-optimized/102 555s ok 190 /regex/match-simple-optimized/103 555s ok 191 /regex/match-simple-optimized/104 555s ok 192 /regex/match-simple-optimized/105 555s ok 193 /regex/match-simple-optimized/106 555s ok 194 /regex/match-simple-optimized/107 555s ok 195 /regex/match-simple-optimized/108 555s ok 196 /regex/match-simple-optimized/109 555s ok 197 /regex/match-simple-optimized/110 555s ok 198 /regex/match-simple-optimized/111 555s ok 199 /regex/match-simple-optimized/112 555s ok 200 /regex/match-simple-optimized/113 555s ok 201 /regex/match-simple-optimized/114 555s ok 202 /regex/match-simple-optimized/115 555s ok 203 /regex/match-simple-optimized/116 555s ok 204 /regex/match-simple-optimized/117 555s ok 205 /regex/match-simple-optimized/118 555s ok 206 /regex/match-simple-optimized/119 555s ok 207 /regex/match-simple-optimized/120 555s ok 208 /regex/match-simple-optimized/121 555s ok 209 /regex/match-simple-optimized/122 555s ok 210 /regex/match-simple-optimized/123 555s ok 211 /regex/match-simple-optimized/124 555s ok 212 /regex/match-simple-optimized/125 555s ok 213 /regex/match-simple-optimized/126 555s ok 214 /regex/match-simple-optimized/127 555s ok 215 /regex/match-simple-optimized/128 555s ok 216 /regex/match-simple-optimized/129 555s ok 217 /regex/match-simple-optimized/130 555s ok 218 /regex/match-simple-optimized/131 555s ok 219 /regex/match-simple-optimized/132 555s ok 220 /regex/match-simple-optimized/133 555s ok 221 /regex/match-simple-optimized/134 555s ok 222 /regex/match-simple-optimized/135 555s ok 223 /regex/match-simple-optimized/136 555s ok 224 /regex/match-simple-optimized/137 555s ok 225 /regex/match-simple-optimized/138 555s ok 226 /regex/match-simple-optimized/139 555s ok 227 /regex/match-simple-optimized/140 555s ok 228 /regex/match-simple-optimized/141 555s ok 229 /regex/match-simple-optimized/142 555s ok 230 /regex/match-simple-optimized/143 555s ok 231 /regex/match-simple-optimized/144 555s ok 232 /regex/match-simple-optimized/145 555s ok 233 /regex/match-simple-optimized/146 555s ok 234 /regex/match-simple-optimized/147 555s ok 235 /regex/match-simple-optimized/148 555s ok 236 /regex/match-simple-optimized/149 555s ok 237 /regex/match-simple-optimized/150 555s ok 238 /regex/match-simple-optimized/151 555s ok 239 /regex/match-simple-optimized/152 555s ok 240 /regex/match-simple-optimized/153 555s ok 241 /regex/match-simple-optimized/154 555s ok 242 /regex/match-simple-optimized/155 555s ok 243 /regex/match-simple-optimized/156 555s ok 244 /regex/match-simple-optimized/157 555s ok 245 /regex/match-simple-optimized/158 555s ok 246 /regex/match-simple-optimized/159 555s ok 247 /regex/match-simple-optimized/160 555s ok 248 /regex/match-simple-optimized/161 555s ok 249 /regex/match-simple-optimized/162 555s ok 250 /regex/match-simple-optimized/163 555s ok 251 /regex/match-simple-optimized/164 555s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 555s ok 252 /regex/match-simple-optimized/165 555s # End of match-simple-optimized tests 555s # Start of match tests 555s ok 253 /regex/match/166 555s ok 254 /regex/match/167 555s ok 255 /regex/match/168 555s ok 256 /regex/match/169 555s ok 257 /regex/match/170 555s ok 258 /regex/match/171 555s ok 259 /regex/match/172 555s ok 260 /regex/match/173 555s ok 261 /regex/match/174 555s ok 262 /regex/match/175 555s ok 263 /regex/match/176 555s ok 264 /regex/match/177 555s ok 265 /regex/match/178 555s ok 266 /regex/match/179 555s ok 267 /regex/match/180 555s ok 268 /regex/match/181 555s ok 269 /regex/match/182 555s ok 270 /regex/match/183 555s ok 271 /regex/match/184 555s ok 272 /regex/match/185 555s ok 273 /regex/match/186 555s ok 274 /regex/match/187 555s ok 275 /regex/match/188 555s ok 276 /regex/match/189 555s ok 277 /regex/match/190 555s ok 278 /regex/match/191 555s ok 279 /regex/match/192 555s ok 280 /regex/match/193 555s ok 281 /regex/match/194 555s ok 282 /regex/match/195 555s ok 283 /regex/match/196 555s ok 284 /regex/match/197 555s ok 285 /regex/match/198 555s ok 286 /regex/match/199 555s ok 287 /regex/match/200 555s ok 288 /regex/match/201 555s ok 289 /regex/match/202 555s ok 290 /regex/match/203 555s ok 291 /regex/match/204 555s ok 292 /regex/match/205 555s ok 293 /regex/match/206 555s ok 294 /regex/match/207 555s ok 295 /regex/match/208 555s ok 296 /regex/match/209 555s ok 297 /regex/match/210 555s ok 298 /regex/match/211 555s ok 299 /regex/match/212 555s ok 300 /regex/match/213 555s ok 301 /regex/match/214 555s ok 302 /regex/match/215 555s ok 303 /regex/match/216 555s ok 304 /regex/match/217 555s ok 305 /regex/match/218 555s ok 306 /regex/match/219 555s ok 307 /regex/match/220 555s ok 308 /regex/match/221 555s ok 309 /regex/match/222 555s ok 310 /regex/match/223 555s ok 311 /regex/match/224 555s ok 312 /regex/match/225 555s ok 313 /regex/match/226 555s ok 314 /regex/match/227 555s ok 315 /regex/match/228 555s ok 316 /regex/match/229 555s ok 317 /regex/match/230 555s ok 318 /regex/match/231 555s ok 319 /regex/match/232 555s ok 320 /regex/match/233 555s ok 321 /regex/match/234 555s ok 322 /regex/match/235 555s ok 323 /regex/match/236 555s ok 324 /regex/match/237 555s ok 325 /regex/match/238 555s ok 326 /regex/match/239 555s ok 327 /regex/match/240 555s ok 328 /regex/match/241 555s ok 329 /regex/match/242 555s ok 330 /regex/match/243 555s ok 331 /regex/match/244 555s ok 332 /regex/match/245 555s ok 333 /regex/match/246 555s ok 334 /regex/match/247 555s ok 335 /regex/match/partial282 555s ok 336 /regex/match/partial283 555s ok 337 /regex/match/partial284 555s ok 338 /regex/match/partial285 555s ok 339 /regex/match/partial286 555s ok 340 /regex/match/partial287 555s ok 341 /regex/match/partial288 555s ok 342 /regex/match/partial289 555s ok 343 /regex/match/partial290 555s ok 344 /regex/match/partial291 555s ok 345 /regex/match/partial292 555s ok 346 /regex/match/partial293 555s ok 347 /regex/match/partial294 555s ok 348 /regex/match/partial295 555s ok 349 /regex/match/partial296 555s ok 350 /regex/match/partial297 555s ok 351 /regex/match/partial298 555s ok 352 /regex/match/partial299 555s ok 353 /regex/match/partial300 555s ok 354 /regex/match/partial301 555s ok 355 /regex/match/partial302 555s ok 356 /regex/match/partial303 555s # Start of next0 tests 555s ok 357 /regex/match/next0/248 555s ok 358 /regex/match/next0/249 555s ok 359 /regex/match/next0/250 555s ok 360 /regex/match/next0/251 555s # End of next0 tests 555s # Start of next1 tests 555s ok 361 /regex/match/next1/252 555s ok 362 /regex/match/next1/253 555s ok 363 /regex/match/next1/254 555s ok 364 /regex/match/next1/255 555s ok 365 /regex/match/next1/256 555s # End of next1 tests 555s # Start of next2 tests 555s ok 366 /regex/match/next2/257 555s ok 367 /regex/match/next2/258 555s ok 368 /regex/match/next2/259 555s ok 369 /regex/match/next2/260 555s ok 370 /regex/match/next2/261 555s ok 371 /regex/match/next2/262 555s ok 372 /regex/match/next2/263 555s ok 373 /regex/match/next2/264 555s # End of next2 tests 555s # Start of next3 tests 555s ok 374 /regex/match/next3/265 555s ok 375 /regex/match/next3/266 555s ok 376 /regex/match/next3/267 555s ok 377 /regex/match/next3/268 555s ok 378 /regex/match/next3/269 555s ok 379 /regex/match/next3/270 555s # End of next3 tests 555s # Start of next4 tests 555s ok 380 /regex/match/next4/271 555s # End of next4 tests 555s # Start of count tests 555s ok 381 /regex/match/count/272 555s ok 382 /regex/match/count/273 555s ok 383 /regex/match/count/274 555s ok 384 /regex/match/count/275 555s ok 385 /regex/match/count/276 555s ok 386 /regex/match/count/277 555s ok 387 /regex/match/count/278 555s ok 388 /regex/match/count/279 555s ok 389 /regex/match/count/280 555s ok 390 /regex/match/count/281 555s # End of count tests 555s # Start of count-optimized tests 555s ok 391 /regex/match/count-optimized/272 555s ok 392 /regex/match/count-optimized/273 555s ok 393 /regex/match/count-optimized/274 555s ok 394 /regex/match/count-optimized/275 555s ok 395 /regex/match/count-optimized/276 555s ok 396 /regex/match/count-optimized/277 555s ok 397 /regex/match/count-optimized/278 555s ok 398 /regex/match/count-optimized/279 555s ok 399 /regex/match/count-optimized/280 555s ok 400 /regex/match/count-optimized/281 555s # End of count-optimized tests 555s # Start of partial-optimized tests 555s ok 401 /regex/match/partial-optimized/282 555s ok 402 /regex/match/partial-optimized/283 555s ok 403 /regex/match/partial-optimized/284 555s ok 404 /regex/match/partial-optimized/285 555s ok 405 /regex/match/partial-optimized/286 555s ok 406 /regex/match/partial-optimized/287 555s ok 407 /regex/match/partial-optimized/288 555s ok 408 /regex/match/partial-optimized/289 555s ok 409 /regex/match/partial-optimized/290 555s ok 410 /regex/match/partial-optimized/291 555s ok 411 /regex/match/partial-optimized/292 555s ok 412 /regex/match/partial-optimized/293 555s ok 413 /regex/match/partial-optimized/294 555s ok 414 /regex/match/partial-optimized/295 555s ok 415 /regex/match/partial-optimized/296 555s ok 416 /regex/match/partial-optimized/297 555s ok 417 /regex/match/partial-optimized/298 555s ok 418 /regex/match/partial-optimized/299 555s ok 419 /regex/match/partial-optimized/300 555s ok 420 /regex/match/partial-optimized/301 555s ok 421 /regex/match/partial-optimized/302 555s ok 422 /regex/match/partial-optimized/303 555s # End of partial-optimized tests 555s # Start of subpattern tests 555s ok 423 /regex/match/subpattern/304 555s ok 424 /regex/match/subpattern/305 555s ok 425 /regex/match/subpattern/306 555s ok 426 /regex/match/subpattern/307 555s ok 427 /regex/match/subpattern/308 555s ok 428 /regex/match/subpattern/309 555s ok 429 /regex/match/subpattern/310 555s ok 430 /regex/match/subpattern/311 555s ok 431 /regex/match/subpattern/312 555s ok 432 /regex/match/subpattern/313 555s ok 433 /regex/match/subpattern/314 555s ok 434 /regex/match/subpattern/315 555s ok 435 /regex/match/subpattern/316 555s # Start of named tests 555s # Start of dupnames tests 555s ok 436 /regex/match/subpattern/named/dupnames/326 555s ok 437 /regex/match/subpattern/named/dupnames/327 555s ok 438 /regex/match/subpattern/named/dupnames/328 555s ok 439 /regex/match/subpattern/named/dupnames/329 555s ok 440 /regex/match/subpattern/named/dupnames/330 555s # End of dupnames tests 555s # End of named tests 555s # End of subpattern tests 555s # Start of subpattern-optimized tests 555s ok 441 /regex/match/subpattern-optimized/304 555s ok 442 /regex/match/subpattern-optimized/305 555s ok 443 /regex/match/subpattern-optimized/306 555s ok 444 /regex/match/subpattern-optimized/307 555s ok 445 /regex/match/subpattern-optimized/308 555s ok 446 /regex/match/subpattern-optimized/309 555s ok 447 /regex/match/subpattern-optimized/310 555s ok 448 /regex/match/subpattern-optimized/311 555s ok 449 /regex/match/subpattern-optimized/312 555s ok 450 /regex/match/subpattern-optimized/313 555s ok 451 /regex/match/subpattern-optimized/314 555s ok 452 /regex/match/subpattern-optimized/315 555s ok 453 /regex/match/subpattern-optimized/316 555s # End of subpattern-optimized tests 555s # Start of named tests 555s # Start of subpattern tests 555s ok 454 /regex/match/named/subpattern/317 555s ok 455 /regex/match/named/subpattern/318 555s ok 456 /regex/match/named/subpattern/319 555s ok 457 /regex/match/named/subpattern/320 555s ok 458 /regex/match/named/subpattern/321 555s ok 459 /regex/match/named/subpattern/322 555s ok 460 /regex/match/named/subpattern/323 555s ok 461 /regex/match/named/subpattern/324 555s ok 462 /regex/match/named/subpattern/325 555s ok 463 /regex/match/named/subpattern/331 555s ok 464 /regex/match/named/subpattern/332 555s ok 465 /regex/match/named/subpattern/333 555s ok 466 /regex/match/named/subpattern/334 555s ok 467 /regex/match/named/subpattern/335 555s # End of subpattern tests 555s # End of named tests 555s # End of match tests 555s # Start of match-optimized tests 555s ok 468 /regex/match-optimized/166 555s ok 469 /regex/match-optimized/167 555s ok 470 /regex/match-optimized/168 555s ok 471 /regex/match-optimized/169 555s ok 472 /regex/match-optimized/170 555s ok 473 /regex/match-optimized/171 555s ok 474 /regex/match-optimized/172 555s ok 475 /regex/match-optimized/173 555s ok 476 /regex/match-optimized/174 555s ok 477 /regex/match-optimized/175 555s ok 478 /regex/match-optimized/176 555s ok 479 /regex/match-optimized/177 555s ok 480 /regex/match-optimized/178 555s ok 481 /regex/match-optimized/179 555s ok 482 /regex/match-optimized/180 555s ok 483 /regex/match-optimized/181 555s ok 484 /regex/match-optimized/182 555s ok 485 /regex/match-optimized/183 555s ok 486 /regex/match-optimized/184 555s ok 487 /regex/match-optimized/185 555s ok 488 /regex/match-optimized/186 555s ok 489 /regex/match-optimized/187 555s ok 490 /regex/match-optimized/188 555s ok 491 /regex/match-optimized/189 555s ok 492 /regex/match-optimized/190 555s ok 493 /regex/match-optimized/191 555s ok 494 /regex/match-optimized/192 555s ok 495 /regex/match-optimized/193 555s ok 496 /regex/match-optimized/194 555s ok 497 /regex/match-optimized/195 555s ok 498 /regex/match-optimized/196 555s ok 499 /regex/match-optimized/197 555s ok 500 /regex/match-optimized/198 555s ok 501 /regex/match-optimized/199 555s ok 502 /regex/match-optimized/200 555s ok 503 /regex/match-optimized/201 555s ok 504 /regex/match-optimized/202 555s ok 505 /regex/match-optimized/203 555s ok 506 /regex/match-optimized/204 555s ok 507 /regex/match-optimized/205 555s ok 508 /regex/match-optimized/206 555s ok 509 /regex/match-optimized/207 555s ok 510 /regex/match-optimized/208 555s ok 511 /regex/match-optimized/209 555s ok 512 /regex/match-optimized/210 555s ok 513 /regex/match-optimized/211 555s ok 514 /regex/match-optimized/212 555s ok 515 /regex/match-optimized/213 555s ok 516 /regex/match-optimized/214 555s ok 517 /regex/match-optimized/215 555s ok 518 /regex/match-optimized/216 555s ok 519 /regex/match-optimized/217 555s ok 520 /regex/match-optimized/218 555s ok 521 /regex/match-optimized/219 555s ok 522 /regex/match-optimized/220 555s ok 523 /regex/match-optimized/221 555s ok 524 /regex/match-optimized/222 555s ok 525 /regex/match-optimized/223 555s ok 526 /regex/match-optimized/224 555s ok 527 /regex/match-optimized/225 555s ok 528 /regex/match-optimized/226 555s ok 529 /regex/match-optimized/227 555s ok 530 /regex/match-optimized/228 555s ok 531 /regex/match-optimized/229 555s ok 532 /regex/match-optimized/230 555s ok 533 /regex/match-optimized/231 555s ok 534 /regex/match-optimized/232 555s ok 535 /regex/match-optimized/233 555s ok 536 /regex/match-optimized/234 555s ok 537 /regex/match-optimized/235 555s ok 538 /regex/match-optimized/236 555s ok 539 /regex/match-optimized/237 555s ok 540 /regex/match-optimized/238 555s ok 541 /regex/match-optimized/239 555s ok 542 /regex/match-optimized/240 555s ok 543 /regex/match-optimized/241 555s ok 544 /regex/match-optimized/242 555s ok 545 /regex/match-optimized/243 555s ok 546 /regex/match-optimized/244 555s ok 547 /regex/match-optimized/245 555s ok 548 /regex/match-optimized/246 555s ok 549 /regex/match-optimized/247 555s # End of match-optimized tests 555s # Start of fetch-all0 tests 555s ok 550 /regex/fetch-all0/336 555s ok 551 /regex/fetch-all0/337 555s # End of fetch-all0 tests 555s # Start of fetch-all1 tests 555s ok 552 /regex/fetch-all1/338 555s ok 553 /regex/fetch-all1/339 555s ok 554 /regex/fetch-all1/340 555s # End of fetch-all1 tests 555s # Start of fetch-all2 tests 555s ok 555 /regex/fetch-all2/341 555s ok 556 /regex/fetch-all2/342 555s ok 557 /regex/fetch-all2/343 555s # End of fetch-all2 tests 555s # Start of fetch-all3 tests 555s ok 558 /regex/fetch-all3/344 555s ok 559 /regex/fetch-all3/345 555s ok 560 /regex/fetch-all3/346 555s ok 561 /regex/fetch-all3/347 555s ok 562 /regex/fetch-all3/348 555s # End of fetch-all3 tests 555s # Start of split tests 555s # Start of simple0 tests 555s ok 563 /regex/split/simple0/349 555s ok 564 /regex/split/simple0/350 555s ok 565 /regex/split/simple0/365 555s ok 566 /regex/split/simple0/366 555s # End of simple0 tests 555s # Start of simple1 tests 555s ok 567 /regex/split/simple1/351 555s ok 568 /regex/split/simple1/352 555s # End of simple1 tests 555s # Start of simple2 tests 555s ok 569 /regex/split/simple2/353 555s ok 570 /regex/split/simple2/359 555s ok 571 /regex/split/simple2/361 555s # End of simple2 tests 555s # Start of simple3 tests 555s ok 572 /regex/split/simple3/354 555s ok 573 /regex/split/simple3/355 555s ok 574 /regex/split/simple3/356 555s ok 575 /regex/split/simple3/357 555s ok 576 /regex/split/simple3/358 555s ok 577 /regex/split/simple3/360 555s ok 578 /regex/split/simple3/362 555s ok 579 /regex/split/simple3/363 555s ok 580 /regex/split/simple3/364 555s # End of simple3 tests 555s # End of split tests 555s # Start of split0 tests 555s ok 581 /regex/split0/367 555s ok 582 /regex/split0/369 555s # End of split0 tests 555s # Start of full-split0 tests 555s ok 583 /regex/full-split0/368 555s ok 584 /regex/full-split0/370 555s ok 585 /regex/full-split0/371 555s ok 586 /regex/full-split0/372 555s ok 587 /regex/full-split0/373 555s # End of full-split0 tests 555s # Start of split1 tests 555s ok 588 /regex/split1/374 555s ok 589 /regex/split1/377 555s # End of split1 tests 555s # Start of full-split1 tests 555s ok 590 /regex/full-split1/375 555s ok 591 /regex/full-split1/376 555s ok 592 /regex/full-split1/378 555s ok 593 /regex/full-split1/379 555s ok 594 /regex/full-split1/405 555s # End of full-split1 tests 555s # Start of split2 tests 555s ok 595 /regex/split2/380 555s ok 596 /regex/split2/384 555s ok 597 /regex/split2/396 555s # End of split2 tests 555s # Start of full-split2 tests 555s ok 598 /regex/full-split2/381 555s ok 599 /regex/full-split2/382 555s ok 600 /regex/full-split2/383 555s ok 601 /regex/full-split2/385 555s ok 602 /regex/full-split2/397 555s ok 603 /regex/full-split2/400 555s ok 604 /regex/full-split2/406 555s # End of full-split2 tests 555s # Start of split3 tests 555s ok 605 /regex/split3/386 555s ok 606 /regex/split3/388 555s ok 607 /regex/split3/390 555s ok 608 /regex/split3/392 555s ok 609 /regex/split3/394 555s ok 610 /regex/split3/398 555s ok 611 /regex/split3/401 555s ok 612 /regex/split3/403 555s # End of split3 tests 555s # Start of full-split3 tests 555s ok 613 /regex/full-split3/387 555s ok 614 /regex/full-split3/389 555s ok 615 /regex/full-split3/391 555s ok 616 /regex/full-split3/393 555s ok 617 /regex/full-split3/395 555s ok 618 /regex/full-split3/399 555s ok 619 /regex/full-split3/402 555s ok 620 /regex/full-split3/404 555s ok 621 /regex/full-split3/407 555s ok 622 /regex/full-split3/408 555s # End of full-split3 tests 555s # Start of check-repacement tests 555s ok 623 /regex/check-repacement/409 555s ok 624 /regex/check-repacement/410 555s ok 625 /regex/check-repacement/411 555s ok 626 /regex/check-repacement/412 555s ok 627 /regex/check-repacement/413 555s ok 628 /regex/check-repacement/414 555s ok 629 /regex/check-repacement/415 555s ok 630 /regex/check-repacement/416 555s # End of check-repacement tests 555s # Start of expand tests 555s ok 631 /regex/expand/417 555s ok 632 /regex/expand/418 555s ok 633 /regex/expand/419 555s ok 634 /regex/expand/420 555s ok 635 /regex/expand/421 555s ok 636 /regex/expand/422 555s ok 637 /regex/expand/423 555s ok 638 /regex/expand/424 555s ok 639 /regex/expand/425 555s ok 640 /regex/expand/426 555s ok 641 /regex/expand/427 555s ok 642 /regex/expand/428 555s ok 643 /regex/expand/429 555s ok 644 /regex/expand/430 555s ok 645 /regex/expand/431 555s ok 646 /regex/expand/432 555s ok 647 /regex/expand/433 555s ok 648 /regex/expand/434 555s ok 649 /regex/expand/435 555s ok 650 /regex/expand/436 555s ok 651 /regex/expand/437 555s ok 652 /regex/expand/438 555s ok 653 /regex/expand/439 555s ok 654 /regex/expand/440 555s ok 655 /regex/expand/441 555s ok 656 /regex/expand/442 555s ok 657 /regex/expand/443 555s ok 658 /regex/expand/444 555s ok 659 /regex/expand/445 555s ok 660 /regex/expand/446 555s ok 661 /regex/expand/447 555s ok 662 /regex/expand/448 555s ok 663 /regex/expand/449 555s ok 664 /regex/expand/450 555s ok 665 /regex/expand/451 555s ok 666 /regex/expand/452 555s ok 667 /regex/expand/453 555s ok 668 /regex/expand/454 555s ok 669 /regex/expand/455 555s ok 670 /regex/expand/456 555s ok 671 /regex/expand/457 555s ok 672 /regex/expand/458 555s ok 673 /regex/expand/459 555s ok 674 /regex/expand/460 555s ok 675 /regex/expand/461 555s ok 676 /regex/expand/462 555s ok 677 /regex/expand/463 555s ok 678 /regex/expand/464 555s ok 679 /regex/expand/465 555s ok 680 /regex/expand/466 555s ok 681 /regex/expand/467 555s ok 682 /regex/expand/468 555s ok 683 /regex/expand/469 555s ok 684 /regex/expand/470 555s ok 685 /regex/expand/471 555s ok 686 /regex/expand/472 555s ok 687 /regex/expand/473 555s ok 688 /regex/expand/474 555s ok 689 /regex/expand/475 555s ok 690 /regex/expand/476 555s ok 691 /regex/expand/477 555s ok 692 /regex/expand/478 555s ok 693 /regex/expand/479 555s ok 694 /regex/expand/480 555s ok 695 /regex/expand/481 555s ok 696 /regex/expand/482 555s # End of expand tests 555s # Start of replace tests 555s ok 697 /regex/replace/483 555s ok 698 /regex/replace/484 555s ok 699 /regex/replace/485 555s ok 700 /regex/replace/486 555s ok 701 /regex/replace/487 555s ok 702 /regex/replace/488 555s ok 703 /regex/replace/489 555s ok 704 /regex/replace/490 555s ok 705 /regex/replace/491 555s ok 706 /regex/replace/492 555s ok 707 /regex/replace/493 555s ok 708 /regex/replace/494 555s ok 709 /regex/replace/495 555s ok 710 /regex/replace/496 555s ok 711 /regex/replace/497 555s ok 712 /regex/replace/498 555s ok 713 /regex/replace/499 555s ok 714 /regex/replace/500 555s ok 715 /regex/replace/501 555s ok 716 /regex/replace/502 555s ok 717 /regex/replace/503 555s ok 718 /regex/replace/504 555s ok 719 /regex/replace/505 555s ok 720 /regex/replace/506 555s ok 721 /regex/replace/507 555s ok 722 /regex/replace/508 555s ok 723 /regex/replace/509 555s ok 724 /regex/replace/510 555s # End of replace tests 555s # Start of replace-optimized tests 555s ok 725 /regex/replace-optimized/483 555s ok 726 /regex/replace-optimized/484 555s ok 727 /regex/replace-optimized/485 555s ok 728 /regex/replace-optimized/486 555s ok 729 /regex/replace-optimized/487 555s ok 730 /regex/replace-optimized/488 555s ok 731 /regex/replace-optimized/489 555s ok 732 /regex/replace-optimized/490 555s ok 733 /regex/replace-optimized/491 555s ok 734 /regex/replace-optimized/492 555s ok 735 /regex/replace-optimized/493 555s ok 736 /regex/replace-optimized/494 555s ok 737 /regex/replace-optimized/495 555s ok 738 /regex/replace-optimized/496 555s ok 739 /regex/replace-optimized/497 555s ok 740 /regex/replace-optimized/498 555s ok 741 /regex/replace-optimized/499 555s ok 742 /regex/replace-optimized/500 555s ok 743 /regex/replace-optimized/501 555s ok 744 /regex/replace-optimized/502 555s ok 745 /regex/replace-optimized/503 555s ok 746 /regex/replace-optimized/504 555s ok 747 /regex/replace-optimized/505 555s ok 748 /regex/replace-optimized/506 555s ok 749 /regex/replace-optimized/507 555s ok 750 /regex/replace-optimized/508 555s ok 751 /regex/replace-optimized/509 555s ok 752 /regex/replace-optimized/510 555s # End of replace-optimized tests 555s # Start of replace-literally tests 555s ok 753 /regex/replace-literally/511 555s ok 754 /regex/replace-literally/512 555s ok 755 /regex/replace-literally/513 555s ok 756 /regex/replace-literally/514 555s ok 757 /regex/replace-literally/515 555s ok 758 /regex/replace-literally/516 555s ok 759 /regex/replace-literally/517 555s ok 760 /regex/replace-literally/518 555s ok 761 /regex/replace-literally/519 555s ok 762 /regex/replace-literally/520 555s ok 763 /regex/replace-literally/521 555s ok 764 /regex/replace-literally/522 555s ok 765 /regex/replace-literally/523 555s ok 766 /regex/replace-literally/524 555s ok 767 /regex/replace-literally/525 555s ok 768 /regex/replace-literally/526 555s ok 769 /regex/replace-literally/527 555s ok 770 /regex/replace-literally/528 555s ok 771 /regex/replace-literally/529 555s ok 772 /regex/replace-literally/530 555s # End of replace-literally tests 555s # Start of string-number tests 555s ok 773 /regex/string-number/531 555s ok 774 /regex/string-number/532 555s ok 775 /regex/string-number/533 555s ok 776 /regex/string-number/534 555s ok 777 /regex/string-number/535 555s ok 778 /regex/string-number/536 555s ok 779 /regex/string-number/537 555s ok 780 /regex/string-number/538 555s ok 781 /regex/string-number/539 555s ok 782 /regex/string-number/540 555s ok 783 /regex/string-number/541 555s ok 784 /regex/string-number/542 555s ok 785 /regex/string-number/543 555s ok 786 /regex/string-number/544 555s ok 787 /regex/string-number/545 555s # End of string-number tests 555s # Start of escape_nul tests 555s ok 788 /regex/escape_nul/546 555s ok 789 /regex/escape_nul/547 555s ok 790 /regex/escape_nul/548 555s ok 791 /regex/escape_nul/549 555s ok 792 /regex/escape_nul/550 555s ok 793 /regex/escape_nul/551 555s ok 794 /regex/escape_nul/552 555s ok 795 /regex/escape_nul/553 555s ok 796 /regex/escape_nul/554 555s ok 797 /regex/escape_nul/555 555s ok 798 /regex/escape_nul/556 555s ok 799 /regex/escape_nul/557 555s ok 800 /regex/escape_nul/558 555s ok 801 /regex/escape_nul/559 555s ok 802 /regex/escape_nul/560 555s # End of escape_nul tests 555s # Start of escape tests 555s ok 803 /regex/escape/561 555s ok 804 /regex/escape/562 555s ok 805 /regex/escape/563 555s ok 806 /regex/escape/564 555s ok 807 /regex/escape/565 555s ok 808 /regex/escape/566 555s ok 809 /regex/escape/567 555s ok 810 /regex/escape/568 555s ok 811 /regex/escape/569 555s ok 812 /regex/escape/570 555s ok 813 /regex/escape/571 555s ok 814 /regex/escape/572 555s ok 815 /regex/escape/573 555s ok 816 /regex/escape/574 555s ok 817 /regex/escape/575 555s ok 818 /regex/escape/576 555s ok 819 /regex/escape/577 555s ok 820 /regex/escape/578 555s # End of escape tests 555s # Start of match-all0 tests 555s ok 821 /regex/match-all0/579 555s ok 822 /regex/match-all0/581 555s # End of match-all0 tests 555s # Start of match-all-full0 tests 555s ok 823 /regex/match-all-full0/580 555s ok 824 /regex/match-all-full0/582 555s ok 825 /regex/match-all-full0/583 555s ok 826 /regex/match-all-full0/584 555s # End of match-all-full0 tests 555s # Start of match-all1 tests 555s ok 827 /regex/match-all1/585 555s ok 828 /regex/match-all1/587 555s ok 829 /regex/match-all1/592 555s # End of match-all1 tests 555s # Start of match-all-full1 tests 555s ok 830 /regex/match-all-full1/586 555s ok 831 /regex/match-all-full1/588 555s ok 832 /regex/match-all-full1/589 555s ok 833 /regex/match-all-full1/590 555s ok 834 /regex/match-all-full1/591 555s ok 835 /regex/match-all-full1/593 555s # End of match-all-full1 tests 555s # Start of match-all2 tests 555s ok 836 /regex/match-all2/594 555s ok 837 /regex/match-all2/596 555s ok 838 /regex/match-all2/598 555s # End of match-all2 tests 555s # Start of match-all-full2 tests 555s ok 839 /regex/match-all-full2/595 555s ok 840 /regex/match-all-full2/597 555s ok 841 /regex/match-all-full2/599 555s # End of match-all-full2 tests 555s # Start of match-all3 tests 555s ok 842 /regex/match-all3/600 555s ok 843 /regex/match-all3/602 555s # End of match-all3 tests 555s # Start of match-all-full3 tests 555s ok 844 /regex/match-all-full3/601 555s ok 845 /regex/match-all-full3/603 555s # End of match-all-full3 tests 555s # Start of match-notempty tests 555s ok 846 /regex/match-notempty/604 555s # End of match-notempty tests 555s # Start of match-notempty-optimized tests 555s ok 847 /regex/match-notempty-optimized/604 555s # End of match-notempty-optimized tests 555s # Start of match-notempty-atstart tests 555s ok 848 /regex/match-notempty-atstart/605 555s # End of match-notempty-atstart tests 555s # Start of match-notempty-atstart-optimized tests 555s ok 849 /regex/match-notempty-atstart-optimized/605 555s # End of match-notempty-atstart-optimized tests 555s # End of regex tests 555s TAP version 14 555s # random seed: R02S01f90248ec0a6124baaf3c58e33cab6b 555s 1..1 555s # Start of markup tests 555s ok 1 /markup/stack 555s # End of markup tests 555s TAP version 14 555s # random seed: R02Sc26b44210a5121565f7c546be29cbc35 555s 1..90 555s # Start of pattern tests 555s # Start of compile tests 555s ok 1 /pattern/compile/0 555s ok 2 /pattern/compile/1 555s ok 3 /pattern/compile/2 555s ok 4 /pattern/compile/3 555s ok 5 /pattern/compile/4 555s ok 6 /pattern/compile/5 555s ok 7 /pattern/compile/6 555s ok 8 /pattern/compile/7 555s ok 9 /pattern/compile/8 555s ok 10 /pattern/compile/9 555s ok 11 /pattern/compile/10 555s ok 12 /pattern/compile/11 555s ok 13 /pattern/compile/12 555s ok 14 /pattern/compile/13 555s # End of compile tests 555s # Start of copy tests 555s ok 15 /pattern/copy/0 555s ok 16 /pattern/copy/1 555s ok 17 /pattern/copy/2 555s ok 18 /pattern/copy/3 555s ok 19 /pattern/copy/4 555s ok 20 /pattern/copy/5 555s ok 21 /pattern/copy/6 555s ok 22 /pattern/copy/7 555s ok 23 /pattern/copy/8 555s ok 24 /pattern/copy/9 555s ok 25 /pattern/copy/10 555s ok 26 /pattern/copy/11 555s ok 27 /pattern/copy/12 555s ok 28 /pattern/copy/13 555s # End of copy tests 555s # Start of match tests 555s ok 29 /pattern/match/0 555s ok 30 /pattern/match/1 555s ok 31 /pattern/match/2 555s ok 32 /pattern/match/3 555s ok 33 /pattern/match/4 555s ok - glib/regex.test 555s # Running test: glib/markup.test 555s ok - glib/markup.test 555s # Running test: glib/pattern.test 555s ok 34 /pattern/match/5 555s ok 35 /pattern/match/6 555s ok 36 /pattern/match/7 555s ok 37 /pattern/match/8 555s ok 38 /pattern/match/9 555s ok 39 /pattern/match/10 555s ok 40 /pattern/match/11 555s ok 41 /pattern/match/12 555s ok 42 /pattern/match/13 555s ok 43 /pattern/match/14 555s ok 44 /pattern/match/15 555s ok 45 /pattern/match/16 555s ok 46 /pattern/match/17 555s ok 47 /pattern/match/18 555s ok 48 /pattern/match/19 555s ok 49 /pattern/match/20 555s ok 50 /pattern/match/21 555s ok 51 /pattern/match/22 555s ok 52 /pattern/match/23 555s ok 53 /pattern/match/24 555s ok 54 /pattern/match/25 555s ok 55 /pattern/match/26 555s ok 56 /pattern/match/27 555s ok 57 /pattern/match/28 555s ok 58 /pattern/match/29 555s ok 59 /pattern/match/30 555s ok 60 /pattern/match/31 555s ok 61 /pattern/match/32 555s ok 62 /pattern/match/33 555s ok 63 /pattern/match/34 555s ok 64 /pattern/match/35 555s ok 65 /pattern/match/36 555s ok 66 /pattern/match/37 555s ok 67 /pattern/match/38 555s ok 68 /pattern/match/39 555s ok 69 /pattern/match/40 555s ok 70 /pattern/match/41 555s ok 71 /pattern/match/42 555s ok 72 /pattern/match/43 555s ok 73 /pattern/match/44 555s ok 74 /pattern/match/45 555s ok 75 /pattern/match/46 555s ok 76 /pattern/match/47 555s ok 77 /pattern/match/48 555s ok 78 /pattern/match/49 555s ok 79 /pattern/match/50 555s # End of match tests 555s # Start of equal tests 555s ok 80 /pattern/equal/0 555s ok 81 /pattern/equal/1 555s ok 82 /pattern/equal/2 555s ok 83 /pattern/equal/3 555s ok 84 /pattern/equal/4 555s ok 85 /pattern/equal/5 555s ok 86 /pattern/equal/6 555s ok 87 /pattern/equal/7 555s ok 88 /pattern/equal/8 555s ok 89 /pattern/equal/9 555s ok 90 /pattern/equal/10 555s # End of equal tests 555s # End of pattern tests 555s TAP version 14 555s # random seed: R02S6bf97153fee6cadb55dfe247209d0497 555s 1..1 555s # Start of glib tests 555s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026 555s ok - glib/pattern.test 555s # Running test: glib/642026-ec.test 555s ok 1 /glib/642026 555s # End of glib tests 555s ok - glib/642026-ec.test 555s TAP version 14 555s # random seed: R02S33936ad80bfb3651c0a3855bbf6323db 555s 1..6 555s # Start of node tests 555s ok 1 /node/allocation 555s ok 2 /node/construction 555s ok 3 /node/traversal 555s ok 4 /node/misc 555s ok 5 /node/unlink 555s ok 6 /node/copy 555s # End of node tests 555s # Running test: glib/node.test 555s ok - glib/node.test 555s # Running test: glib/cxx-14.test 555s TAP version 14 555s # random seed: R02Sb4c8ad4ed8f957e27faf2eae5ad88d83 555s 1..2 555s # Start of gtask tests 555s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 555s ok 1 /gtask/name 555s # Start of name tests 555s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 555s ok 2 /gtask/name/macro-wrapper 555s # End of name tests 555s # End of gtask tests 555s ok - glib/cxx-14.test 555s # Running test: glib/gobject-query.py.test 555s TAP version 13 555s ok 1 __main__.TestGobjectQuery.test_froots 555s # gobject-query: /usr/bin/gobject-query 555s # tmpdir: /tmp/tmp9exfnhc0 555s # Running: ['/usr/bin/gobject-query', 'froots'] 555s # Return code: 0 555s # Output: 555s # ├void 555s # ├GInterface 555s # │ └GTypePlugin 555s # ├gchar 555s # ├guchar 555s # ├gboolean 555s # ├gint 555s # ├guint 555s # ├glong 555s # ├gulong 555s # ├gint64 555s # ├guint64 555s # ├GEnum 555s # ├GFlags 555s # ├gfloat 555s # ├gdouble 555s # ├gchararray 555s # ├gpointer 555s # │ └GType 555s # ├GBoxed 555s # │ └GValueArray 555s # ├GParam 555s # │ ├GParamChar 555s # │ ├GParamUChar 555s # │ ├GParamBoolean 555s # │ ├GParamInt 555s # │ ├GParamUInt 555s # │ ├GParamLong 555s # │ ├GParamULong 555s # │ ├GParamInt64 555s # │ ├GParamUInt64 555s # │ ├GParamUnichar 555s # │ ├GParamEnum 555s # │ ├GParamFlags 555s # │ ├GParamFloat 555s # │ ├GParamDouble 555s # │ ├GParamString 555s # │ ├GParamParam 555s # │ ├GParamBoxed 555s # │ ├GParamPointer 555s # │ ├GParamValueArray 555s # │ ├GParamObject 555s # │ ├GParamOverride 555s # │ ├GParamGType 555s # │ └GParamVariant 555s # ├GObject 555s # └GVariant 555s # Error: 555s ok 2 __main__.TestGobjectQuery.test_help 555s # gobject-query: /usr/bin/gobject-query 555s # tmpdir: /tmp/tmp6ciahsj6 555s # Running: ['/usr/bin/gobject-query', '--help'] 555s # Return code: 0 555s # Output: 555s # usage: gobject-query [-r ] [-{i|b} ""] [-s #] [-{h|x|y}] 555s # -r specify root type 555s # -n don't descend type tree 555s # -h show help 555s # -b specify indent string 555s # -i specify incremental indent string 555s # -s specify line spacing 555s # qualifiers: 555s # froots iterate over fundamental roots 555s # tree print type tree 555s # Error: 555s ok 3 __main__.TestGobjectQuery.test_tree 555s # gobject-query: /usr/bin/gobject-query 555s # tmpdir: /tmp/tmpajq04bas 555s # Running: ['/usr/bin/gobject-query', 'tree'] 555s # Return code: 0 555s # Output: 555s # GObject 555s # Error: 555s ok 4 __main__.TestGobjectQuery.test_version 555s # gobject-query: /usr/bin/gobject-query 555s # tmpdir: /tmp/tmpxuk_c3hg 555s # Running: ['/usr/bin/gobject-query', '--version'] 555s # Return code: 0 555s # Output: 555s # 2.86.3 555s # Error: 555s 1..4 555s TAP version 14 555s # random seed: R02Sb1ebe0d7527ee00d0b5463e1b94ffdf6 555s 1..7 555s # Start of spawn tests 555s # /spawn/do-not-search summary: Without G_SPAWN_SEARCH_PATH, spawn-test-helper means ./spawn-test-helper. 555s ok - glib/gobject-query.py.test 555s # Running test: glib/spawn-path-search.test 555s # 555s # this is spawn-test-helper from glib/tests 555s # 555s ok 1 /spawn/do-not-search 555s # /spawn/search-path summary: With G_SPAWN_SEARCH_PATH, spawn-test-helper means $PATH/spawn-test-helper. 555s # 555s # this is spawn-test-helper from path-test-subdir 555s # 555s ok 2 /spawn/search-path 555s # /spawn/search-path-from-envp summary: With G_SPAWN_SEARCH_PATH_FROM_ENVP, spawn-test-helper means $PATH/spawn-test-helper with $PATH from envp. 555s # 555s # this is spawn-test-helper from path-test-subdir 555s # 555s ok 3 /spawn/search-path-from-envp 555s # /spawn/search-path-ambiguous summary: With G_SPAWN_SEARCH_PATH and G_SPAWN_SEARCH_PATH_FROM_ENVP, the latter wins. 555s # 555s # this is spawn-test-helper from path-test-subdir 555s # 555s ok 4 /spawn/search-path-ambiguous 555s # 555s # this is spawn-test-helper from path-test-subdir 555s # 555s ok 5 /spawn/search-path-heap-allocation 555s # /spawn/search-path-fallback-in-environ summary: With G_SPAWN_SEARCH_PATH but no PATH, a fallback is used. 555s # 555s # this is spawn-test-helper from glib/tests 555s # 555s ok 6 /spawn/search-path-fallback-in-environ 555s # /spawn/search-path-fallback-in-envp summary: With G_SPAWN_SEARCH_PATH_FROM_ENVP but no PATH, a fallback is used. 555s # 555s # this is spawn-test-helper from glib/tests 555s # 555s ok 7 /spawn/search-path-fallback-in-envp 555s # End of spawn tests 555s ok - glib/spawn-path-search.test 555s # Running test: glib/messages-low-memory.py.test 556s TAP version 13 556s ok 1 __main__.TestMessagesLowMemory.test_message_memory_allocation_failure 556s # messages-low-memory: /usr/libexec/installed-tests/glib/messages-low-memory 556s # tmpdir: /tmp/tmp7pkw5crn 556s # Running: ['/usr/libexec/installed-tests/glib/messages-low-memory'] 556s # Return code: -6 556s # Output: 556s # 556s # Error: 556s # GLib-Message: 21:47:02.343: Simulates a situation in which we were crashing because of low-memory, leading malloc to fail instead of aborting 556s # GLib-Message: 21:47:02.343: bug: https://gitlab.gnome.org/GNOME/glib/-/issues/2753 556s # ../../../glib/gprintf.c:351: failed to allocate memory 556s 1..1 556s ok - glib/messages-low-memory.py.test 556s TAP version 14 556s # random seed: R02Sd7154e3fe7271a76e7d2ab998bf0144e 556s 1..2 556s # Start of cmph-bdz tests 556s ok 1 /cmph-bdz/search 556s ok 2 /cmph-bdz/search-packed 556s # End of cmph-bdz tests 556s # Running test: glib/cmph-bdz.test 556s ok - glib/cmph-bdz.test 556s TAP version 14 556s # random seed: R02S86e91e02d2d33caad4d0201721f07c0b 556s 1..1 556s # Start of credentials tests 556s # GCredentials:linux-ucred:pid=3955,uid=1000,gid=1000 556s # GCredentials:linux-ucred:pid=3955,uid=0,gid=1000 556s ok 1 /credentials/basic 556s # End of credentials tests 556s # Running test: glib/credentials.test 556s ok - glib/credentials.test 556s # Running test: glib/codegen.py.test 556s TAP version 13 556s ok 1 __main__.TestCodegen.test_call_flags_and_timeout_method_args 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmp4iy0c9dc 556s # /tmp/tmp4iy0c9dc/tmpodum2z40.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4iy0c9dc/tmpodum2z40.xml', '--output', '-', '--header'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifndef __STDOUT__ 556s # #define __STDOUT__ 556s # 556s # #include 556s # 556s # G_BEGIN_DECLS 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # /* Declarations for org.project.UsefulInterface */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 556s # 556s # struct _OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 556s # 556s # struct _OrgProjectUsefulInterfaceIface 556s # { 556s # GTypeInterface parent_iface; 556s # 556s # gboolean (*handle_useful_method) ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # }; 556s # 556s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 556s # 556s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 556s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 556s # 556s # 556s # /* D-Bus method call completion functions: */ 556s # void org_project_useful_interface_complete_useful_method ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # 556s # 556s # /* D-Bus method calls: */ 556s # void org_project_useful_interface_call_useful_method ( 556s # OrgProjectUsefulInterface *proxy, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_finish ( 556s # OrgProjectUsefulInterface *proxy, 556s # GAsyncResult *res, 556s # GError **error); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_sync ( 556s # OrgProjectUsefulInterface *proxy, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 556s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 556s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceProxy 556s # { 556s # /*< private >*/ 556s # GDBusProxy parent_instance; 556s # OrgProjectUsefulInterfaceProxyPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceProxyClass 556s # { 556s # GDBusProxyClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 556s # #endif 556s # 556s # void org_project_useful_interface_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # void org_project_useful_interface_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeleton 556s # { 556s # /*< private >*/ 556s # GDBusInterfaceSkeleton parent_instance; 556s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeletonClass 556s # { 556s # GDBusInterfaceSkeletonClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 556s # #endif 556s # 556s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 556s # 556s # 556s # G_END_DECLS 556s # 556s # #endif /* __STDOUT__ */ 556s # Error: 556s # 556s # /tmp/tmp4iy0c9dc/tmpitrbjsuo.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4iy0c9dc/tmpitrbjsuo.xml', '--output', '-', '--header', '--glib-min-required', '2.32'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifndef __STDOUT__ 556s # #define __STDOUT__ 556s # 556s # #include 556s # 556s # G_BEGIN_DECLS 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # /* Declarations for org.project.UsefulInterface */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 556s # 556s # struct _OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 556s # 556s # struct _OrgProjectUsefulInterfaceIface 556s # { 556s # GTypeInterface parent_iface; 556s # 556s # gboolean (*handle_useful_method) ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # }; 556s # 556s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 556s # 556s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 556s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 556s # 556s # 556s # /* D-Bus method call completion functions: */ 556s # void org_project_useful_interface_complete_useful_method ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # 556s # 556s # /* D-Bus method calls: */ 556s # void org_project_useful_interface_call_useful_method ( 556s # OrgProjectUsefulInterface *proxy, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_finish ( 556s # OrgProjectUsefulInterface *proxy, 556s # GAsyncResult *res, 556s # GError **error); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_sync ( 556s # OrgProjectUsefulInterface *proxy, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 556s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 556s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceProxy 556s # { 556s # /*< private >*/ 556s # GDBusProxy parent_instance; 556s # OrgProjectUsefulInterfaceProxyPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceProxyClass 556s # { 556s # GDBusProxyClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 556s # #endif 556s # 556s # void org_project_useful_interface_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # void org_project_useful_interface_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeleton 556s # { 556s # /*< private >*/ 556s # GDBusInterfaceSkeleton parent_instance; 556s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeletonClass 556s # { 556s # GDBusInterfaceSkeletonClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 556s # #endif 556s # 556s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 556s # 556s # 556s # G_END_DECLS 556s # 556s # #endif /* __STDOUT__ */ 556s # Error: 556s # 556s # /tmp/tmp4iy0c9dc/tmpv_03_0or.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4iy0c9dc/tmpv_03_0or.xml', '--output', '-', '--header', '--glib-min-required', '2.64'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifndef __STDOUT__ 556s # #define __STDOUT__ 556s # 556s # #include 556s # 556s # G_BEGIN_DECLS 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # /* Declarations for org.project.UsefulInterface */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 556s # 556s # struct _OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 556s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 556s # 556s # struct _OrgProjectUsefulInterfaceIface 556s # { 556s # GTypeInterface parent_iface; 556s # 556s # gboolean (*handle_useful_method) ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # }; 556s # 556s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 556s # 556s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 556s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 556s # 556s # 556s # /* D-Bus method call completion functions: */ 556s # void org_project_useful_interface_complete_useful_method ( 556s # OrgProjectUsefulInterface *object, 556s # GDBusMethodInvocation *invocation); 556s # 556s # 556s # 556s # /* D-Bus method calls: */ 556s # void org_project_useful_interface_call_useful_method ( 556s # OrgProjectUsefulInterface *proxy, 556s # GDBusCallFlags call_flags, 556s # gint timeout_msec, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_finish ( 556s # OrgProjectUsefulInterface *proxy, 556s # GAsyncResult *res, 556s # GError **error); 556s # 556s # gboolean org_project_useful_interface_call_useful_method_sync ( 556s # OrgProjectUsefulInterface *proxy, 556s # GDBusCallFlags call_flags, 556s # gint timeout_msec, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 556s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 556s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceProxy 556s # { 556s # /*< private >*/ 556s # GDBusProxy parent_instance; 556s # OrgProjectUsefulInterfaceProxyPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceProxyClass 556s # { 556s # GDBusProxyClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 556s # #endif 556s # 556s # void org_project_useful_interface_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # void org_project_useful_interface_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error); 556s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error); 556s # 556s # 556s # /* ---- */ 556s # 556s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 556s # 556s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 556s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeleton 556s # { 556s # /*< private >*/ 556s # GDBusInterfaceSkeleton parent_instance; 556s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 556s # }; 556s # 556s # struct _OrgProjectUsefulInterfaceSkeletonClass 556s # { 556s # GDBusInterfaceSkeletonClass parent_class; 556s # }; 556s # 556s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 556s # 556s # #if GLIB_CHECK_VERSION(2, 44, 0) 556s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 556s # #endif 556s # 556s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 556s # 556s # 556s # G_END_DECLS 556s # 556s # #endif /* __STDOUT__ */ 556s # Error: 556s ok 2 __main__.TestCodegen.test_dbus_types 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmpamyedkbd 556s # /tmp/tmpamyedkbd/tmp3qj7y957.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp3qj7y957.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "{vs}". "v" is not a valid type for dictionary keys at position 1. 556s # /tmp/tmpamyedkbd/tmptuoo3zmt.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmptuoo3zmt.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "(ss(s{{sv}s}))". "{" is not a valid type for dictionary keys at position 6. 556s # /tmp/tmpamyedkbd/tmprnn33vuu.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmprnn33vuu.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "{s". Error parsing string or brackets not closed. 556s # /tmp/tmpamyedkbd/tmpmk6w2pp8.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmpmk6w2pp8.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "(s{sss})". Dict must end with "}" at position 5. 556s # /tmp/tmpamyedkbd/tmp5t7yjxt9.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp5t7yjxt9.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "z". "z" is not a valid D-Bus type. 556s # /tmp/tmpamyedkbd/tmpqr0bytjv.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmpqr0bytjv.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "(ssms)". "m" is not a valid D-Bus type. 556s # /tmp/tmpamyedkbd/tmpl2r30lo_.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmpl2r30lo_.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "(". Error parsing string or brackets not closed. 556s # /tmp/tmpamyedkbd/tmp429rtsq0.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp429rtsq0.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "(((ss))". Error parsing string or brackets not closed. 556s # /tmp/tmpamyedkbd/tmp4mgmqmr1.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp4mgmqmr1.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas". Too much recursion beginning at 129. 556s # /tmp/tmpamyedkbd/tmp7gel5n7q.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp7gel5n7q.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: D-Bus maximum signature length of 255 exceeded. 556s # /tmp/tmpamyedkbd/tmpkduvkmm7.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmpkduvkmm7.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: D-Bus maximum signature length of 255 exceeded. 556s # /tmp/tmpamyedkbd/tmp__9nzbzg.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp__9nzbzg.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: Bad signature "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaa{sv})". Too much recursion beginning at 129. 556s # /tmp/tmpamyedkbd/tmp6jgpa648.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp6jgpa648.xml', '--output', '-', '--body'] 556s # Return code: 1 556s # Output: 556s # 556s # Error: 556s # ERROR: D-Bus maximum signature length of 255 exceeded. 556s # /tmp/tmpamyedkbd/tmpcpkug_wy.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmpcpkug_wy.xml', '--output', '-', '--body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # #ifdef G_OS_UNIX 556s # # include 556s # #endif 556s # 556s # #ifdef G_ENABLE_DEBUG 556s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 556s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 556s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 556s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 556s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 556s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 556s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 556s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 556s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 556s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 556s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 556s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 556s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 556s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 556s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 556s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 556s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 556s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 556s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 556s # #else /* !G_ENABLE_DEBUG */ 556s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 556s # * Do not access GValues directly in your code. Instead, use the 556s # * g_value_get_*() functions 556s # */ 556s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 556s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 556s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 556s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 556s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 556s # #endif /* !G_ENABLE_DEBUG */ 556s # 556s # typedef struct 556s # { 556s # GDBusArgInfo parent_struct; 556s # gboolean use_gvariant; 556s # } _ExtendedGDBusArgInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusMethodInfo parent_struct; 556s # const gchar *signal_name; 556s # gboolean pass_fdlist; 556s # } _ExtendedGDBusMethodInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusSignalInfo parent_struct; 556s # const gchar *signal_name; 556s # } _ExtendedGDBusSignalInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusPropertyInfo parent_struct; 556s # const gchar *hyphen_name; 556s # guint use_gvariant : 1; 556s # guint emits_changed_signal : 1; 556s # } _ExtendedGDBusPropertyInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusInterfaceInfo parent_struct; 556s # const gchar *hyphen_name; 556s # } _ExtendedGDBusInterfaceInfo; 556s # 556s # typedef struct 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # guint prop_id; 556s # GValue orig_value; /* the value before the change */ 556s # } ChangedProperty; 556s # 556s # static void 556s # _changed_property_free (ChangedProperty *data) 556s # { 556s # g_value_unset (&data->orig_value); 556s # g_free (data); 556s # } 556s # 556s # static gboolean 556s # _g_strv_equal0 (gchar **a, gchar **b) 556s # { 556s # gboolean ret = FALSE; 556s # guint n; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # if (g_strv_length (a) != g_strv_length (b)) 556s # goto out; 556s # for (n = 0; a[n] != NULL; n++) 556s # if (g_strcmp0 (a[n], b[n]) != 0) 556s # goto out; 556s # ret = TRUE; 556s # out: 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _g_variant_equal0 (GVariant *a, GVariant *b) 556s # { 556s # gboolean ret = FALSE; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # ret = g_variant_equal (a, b); 556s # out: 556s # return ret; 556s # } 556s # 556s # G_GNUC_UNUSED static gboolean 556s # _g_value_equal (const GValue *a, const GValue *b) 556s # { 556s # gboolean ret = FALSE; 556s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 556s # switch (G_VALUE_TYPE (a)) 556s # { 556s # case G_TYPE_BOOLEAN: 556s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 556s # break; 556s # case G_TYPE_UCHAR: 556s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 556s # break; 556s # case G_TYPE_INT: 556s # ret = (g_value_get_int (a) == g_value_get_int (b)); 556s # break; 556s # case G_TYPE_UINT: 556s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 556s # break; 556s # case G_TYPE_INT64: 556s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 556s # break; 556s # case G_TYPE_UINT64: 556s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 556s # break; 556s # case G_TYPE_DOUBLE: 556s # { 556s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 556s # gdouble da = g_value_get_double (a); 556s # gdouble db = g_value_get_double (b); 556s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 556s # } 556s # break; 556s # case G_TYPE_STRING: 556s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 556s # break; 556s # case G_TYPE_VARIANT: 556s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 556s # break; 556s # default: 556s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 556s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 556s # else 556s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 556s # break; 556s # } 556s # return ret; 556s # } 556s # 556s # /* ------------------------------------------------------------------------ 556s # * Code for interface GoodTypes 556s # * ------------------------------------------------------------------------ 556s # */ 556s # 556s # /** 556s # * SECTION:GoodTypes 556s # * @title: GoodTypes 556s # * @short_description: Generated C code for the GoodTypes D-Bus interface 556s # * 556s # * This section contains code for working with the GoodTypes D-Bus interface in C. 556s # */ 556s # 556s # /* ---- Introspection data for GoodTypes ---- */ 556s # 556s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodPropertyType", 556s # (gchar *) "si{s{b(ybnqiuxtdh)}}{yv}{nv}{dv}", 556s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 556s # NULL 556s # }, 556s # "good-property-type", 556s # FALSE, 556s # TRUE 556s # }; 556s # 556s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 556s # { 556s # &_good_types_property_info_good_property_type.parent_struct, 556s # NULL 556s # }; 556s # 556s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodTypes", 556s # NULL, 556s # NULL, 556s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 556s # NULL 556s # }, 556s # "good-types", 556s # }; 556s # 556s # 556s # /** 556s # * good_types_interface_info: 556s # * 556s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 556s # * 556s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 556s # */ 556s # GDBusInterfaceInfo * 556s # good_types_interface_info (void) 556s # { 556s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 556s # } 556s # 556s # /** 556s # * good_types_override_properties: 556s # * @klass: The class structure for a #GObject derived class. 556s # * @property_id_begin: The property id to assign to the first overridden property. 556s # * 556s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 556s # * The properties are overridden in the order they are defined. 556s # * 556s # * Returns: The last property id. 556s # */ 556s # guint 556s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 556s # { 556s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 556s # return property_id_begin - 1; 556s # } 556s # 556s # 556s # 556s # /** 556s # * GoodTypes: 556s # * 556s # * Abstract interface type for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # /** 556s # * GoodTypesIface: 556s # * @parent_iface: The parent interface. 556s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 556s # * 556s # * Virtual table for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # typedef GoodTypesIface GoodTypesInterface; 556s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 556s # 556s # static void 556s # good_types_default_init (GoodTypesIface *iface) 556s # { 556s # /* GObject properties for D-Bus properties: */ 556s # /** 556s # * GoodTypes:good-property-type: 556s # * 556s # * Represents the D-Bus property "GoodPropertyType". 556s # * 556s # * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. 556s # */ 556s # g_object_interface_install_property (iface, 556s # g_param_spec_variant ("good-property-type", "GoodPropertyType", "GoodPropertyType", G_VARIANT_TYPE ("si{s{b(ybnqiuxtdh)}}{yv}{nv}{dv}"), NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 556s # } 556s # 556s # /** 556s # * good_types_get_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets the value of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use good_types_dup_good_property_type() if on another thread. 556s # * 556s # * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. 556s # */ 556s # GVariant * 556s # good_types_get_good_property_type (GoodTypes *object) 556s # { 556s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 556s # 556s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 556s # } 556s # 556s # /** 556s # * good_types_dup_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets a copy of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_variant_unref(). 556s # */ 556s # GVariant * 556s # good_types_dup_good_property_type (GoodTypes *object) 556s # { 556s # GVariant *value; 556s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 556s # return value; 556s # } 556s # 556s # /** 556s # * good_types_set_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * @value: The value to set. 556s # * 556s # * Sets the "GoodPropertyType" D-Bus property to @value. 556s # * 556s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 556s # */ 556s # void 556s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 556s # { 556s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 556s # } 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesProxy: 556s # * 556s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesProxyClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesProxy. 556s # */ 556s # 556s # struct _GoodTypesProxyPrivate 556s # { 556s # GData *qdata; 556s # }; 556s # 556s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_ADD_PRIVATE (GoodTypesProxy) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_proxy_finalize (GObject *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # g_datalist_clear (&proxy->priv->qdata); 556s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_proxy_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 556s # if (info->use_gvariant) 556s # { 556s # g_value_set_variant (value, variant); 556s # } 556s # else 556s # { 556s # if (variant != NULL) 556s # g_dbus_gvariant_to_gvalue (variant, value); 556s # } 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 556s # GAsyncResult *res, 556s # gpointer user_data) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info = user_data; 556s # GError *error; 556s # GVariant *_ret; 556s # error = NULL; 556s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 556s # if (!_ret) 556s # { 556s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 556s # info->parent_struct.name, 556s # error->message, g_quark_to_string (error->domain), error->code); 556s # g_error_free (error); 556s # } 556s # else 556s # { 556s # g_variant_unref (_ret); 556s # } 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_dbus_proxy_call (G_DBUS_PROXY (object), 556s # "org.freedesktop.DBus.Properties.Set", 556s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 556s # G_DBUS_CALL_FLAGS_NONE, 556s # -1, 556s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_signal (GDBusProxy *proxy, 556s # const gchar *sender_name G_GNUC_UNUSED, 556s # const gchar *signal_name, 556s # GVariant *parameters) 556s # { 556s # _ExtendedGDBusSignalInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # gsize n; 556s # guint signal_id; 556s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 556s # if (info == NULL) 556s # return; 556s # num_params = g_variant_n_children (parameters); 556s # paramv = g_new0 (GValue, num_params + 1); 556s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[0], proxy); 556s # g_variant_iter_init (&iter, parameters); 556s # n = 1; 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_signal_emitv (paramv, signal_id, 0, NULL); 556s # for (n = 0; n < num_params + 1; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 556s # GVariant *changed_properties, 556s # const gchar *const *invalidated_properties) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 556s # guint n; 556s # const gchar *key; 556s # GVariantIter *iter; 556s # _ExtendedGDBusPropertyInfo *info; 556s # g_variant_get (changed_properties, "a{sv}", &iter); 556s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 556s # g_datalist_remove_data (&proxy->priv->qdata, key); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # g_variant_iter_free (iter); 556s # for (n = 0; invalidated_properties[n] != NULL; n++) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 556s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # } 556s # 556s # static GVariant * 556s # good_types_proxy_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # GVariant *variant; 556s # GVariant *value = NULL; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 556s # value = variant; 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_proxy_init (GoodTypesProxy *proxy) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # proxy->priv = good_types_proxy_get_instance_private (proxy); 556s # #else 556s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 556s # #endif 556s # 556s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 556s # } 556s # 556s # static void 556s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusProxyClass *proxy_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_proxy_finalize; 556s # gobject_class->get_property = good_types_proxy_get_property; 556s # gobject_class->set_property = good_types_proxy_set_property; 556s # 556s # proxy_class = G_DBUS_PROXY_CLASS (klass); 556s # proxy_class->g_signal = good_types_proxy_g_signal; 556s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_proxy_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_sync: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /** 556s # * good_types_proxy_new_for_bus: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new_for_bus(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_sync: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesSkeleton: 556s # * 556s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesSkeletonClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesSkeleton. 556s # */ 556s # 556s # struct _GoodTypesSkeletonPrivate 556s # { 556s # GValue *properties; 556s # GList *changed_properties; 556s # GSource *changed_properties_idle_source; 556s # GMainContext *context; 556s # GMutex lock; 556s # }; 556s # 556s # static void 556s # _good_types_skeleton_handle_method_call ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name, 556s # const gchar *method_name, 556s # GVariant *parameters, 556s # GDBusMethodInvocation *invocation, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # _ExtendedGDBusMethodInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # guint num_extra; 556s # gsize n; 556s # guint signal_id; 556s # GValue return_value = G_VALUE_INIT; 556s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 556s # g_assert (info != NULL); 556s # num_params = g_variant_n_children (parameters); 556s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 556s # n = 0; 556s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[n++], skeleton); 556s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 556s # g_value_set_object (¶mv[n++], invocation); 556s # if (info->pass_fdlist) 556s # { 556s # #ifdef G_OS_UNIX 556s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 556s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 556s # #else 556s # g_assert_not_reached (); 556s # #endif 556s # } 556s # g_variant_iter_init (&iter, parameters); 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_value_init (&return_value, G_TYPE_BOOLEAN); 556s # g_signal_emitv (paramv, signal_id, 0, &return_value); 556s # if (!g_value_get_boolean (&return_value)) 556s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 556s # g_value_unset (&return_value); 556s # for (n = 0; n < num_params + num_extra; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static GVariant * 556s # _good_types_skeleton_handle_get_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # GVariant *ret; 556s # ret = NULL; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # g_value_init (&value, pspec->value_type); 556s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_value_unset (&value); 556s # } 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _good_types_skeleton_handle_set_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GVariant *variant, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # gboolean ret; 556s # ret = FALSE; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # if (info->use_gvariant) 556s # g_value_set_variant (&value, variant); 556s # else 556s # g_dbus_gvariant_to_gvalue (variant, &value); 556s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # g_value_unset (&value); 556s # ret = TRUE; 556s # } 556s # return ret; 556s # } 556s # 556s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 556s # { 556s # _good_types_skeleton_handle_method_call, 556s # _good_types_skeleton_handle_get_property, 556s # _good_types_skeleton_handle_set_property, 556s # {NULL} 556s # }; 556s # 556s # static GDBusInterfaceInfo * 556s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return good_types_interface_info (); 556s # } 556s # 556s # static GDBusInterfaceVTable * 556s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # 556s # GVariantBuilder builder; 556s # guint n; 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #else 556s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #endif 556s # if (_good_types_interface_info.parent_struct.properties == NULL) 556s # goto out; 556s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 556s # { 556s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 556s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 556s # { 556s # GVariant *value; 556s # value = _good_types_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "GoodTypes", info->name, NULL, skeleton); 556s # if (value != NULL) 556s # { 556s # g_variant_take_ref (value); 556s # g_variant_builder_add (&builder, "{sv}", info->name, value); 556s # g_variant_unref (value); 556s # } 556s # } 556s # } 556s # out: 556s # return g_variant_builder_end (&builder); 556s # } 556s # 556s # static gboolean _good_types_emit_changed (gpointer user_data); 556s # 556s # static void 556s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # gboolean emit_changed = FALSE; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # { 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # emit_changed = TRUE; 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # 556s # if (emit_changed) 556s # _good_types_emit_changed (skeleton); 556s # } 556s # 556s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_ADD_PRIVATE (GoodTypesSkeleton) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_skeleton_finalize (GObject *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # guint n; 556s # for (n = 0; n < 1; n++) 556s # g_value_unset (&skeleton->priv->properties[n]); 556s # g_free (skeleton->priv->properties); 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # g_main_context_unref (skeleton->priv->context); 556s # g_mutex_clear (&skeleton->priv->lock); 556s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static gboolean 556s # _good_types_emit_changed (gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GList *l; 556s # GVariantBuilder builder; 556s # GVariantBuilder invalidated_builder; 556s # guint num_changes; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #else 556s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #endif 556s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *cp = l->data; 556s # GVariant *variant; 556s # const GValue *cur_value; 556s # 556s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 556s # if (!_g_value_equal (cur_value, &cp->orig_value)) 556s # { 556s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 556s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 556s # g_variant_unref (variant); 556s # num_changes++; 556s # } 556s # } 556s # if (num_changes > 0) 556s # { 556s # GList *connections, *ll; 556s # GVariant *signal_variant; 556s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 556s # &builder, &invalidated_builder)); 556s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 556s # for (ll = connections; ll != NULL; ll = ll->next) 556s # { 556s # GDBusConnection *connection = ll->data; 556s # 556s # g_dbus_connection_emit_signal (connection, 556s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 556s # "org.freedesktop.DBus.Properties", 556s # "PropertiesChanged", 556s # signal_variant, 556s # NULL); 556s # } 556s # g_variant_unref (signal_variant); 556s # g_list_free_full (connections, g_object_unref); 556s # } 556s # else 556s # { 556s # g_variant_builder_clear (&builder); 556s # g_variant_builder_clear (&invalidated_builder); 556s # } 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # skeleton->priv->changed_properties = NULL; 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return FALSE; 556s # } 556s # 556s # static void 556s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 556s # { 556s # ChangedProperty *cp; 556s # GList *l; 556s # cp = NULL; 556s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *i_cp = l->data; 556s # if (i_cp->info == info) 556s # { 556s # cp = i_cp; 556s # break; 556s # } 556s # } 556s # if (cp == NULL) 556s # { 556s # cp = g_new0 (ChangedProperty, 1); 556s # cp->prop_id = prop_id; 556s # cp->info = info; 556s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 556s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 556s # g_value_copy (orig_value, &cp->orig_value); 556s # } 556s # } 556s # 556s # static void 556s # good_types_skeleton_notify (GObject *object, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties != NULL && 556s # skeleton->priv->changed_properties_idle_source == NULL) 556s # { 556s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 556s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 556s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 556s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 556s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 556s # g_source_unref (skeleton->priv->changed_properties_idle_source); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static void 556s # good_types_skeleton_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_object_freeze_notify (object); 556s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 556s # { 556s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 556s # info->emits_changed_signal) 556s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 556s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 556s # g_object_notify_by_pspec (object, pspec); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # g_object_thaw_notify (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 556s # #else 556s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 556s # #endif 556s # 556s # g_mutex_init (&skeleton->priv->lock); 556s # skeleton->priv->context = g_main_context_ref_thread_default (); 556s # skeleton->priv->properties = g_new0 (GValue, 1); 556s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # GVariant *value; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusInterfaceSkeletonClass *skeleton_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_skeleton_finalize; 556s # gobject_class->get_property = good_types_skeleton_get_property; 556s # gobject_class->set_property = good_types_skeleton_set_property; 556s # gobject_class->notify = good_types_skeleton_notify; 556s # 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 556s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 556s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 556s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 556s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_skeleton_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_skeleton_new: 556s # * 556s # * Creates a skeleton object for the D-Bus interface GoodTypes. 556s # * 556s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 556s # */ 556s # GoodTypes * 556s # good_types_skeleton_new (void) 556s # { 556s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 556s # } 556s # Error: 556s # 556s # /tmp/tmpamyedkbd/tmp6a_q7id8.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp6a_q7id8.xml', '--output', '-', '--body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # #ifdef G_OS_UNIX 556s # # include 556s # #endif 556s # 556s # #ifdef G_ENABLE_DEBUG 556s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 556s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 556s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 556s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 556s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 556s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 556s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 556s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 556s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 556s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 556s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 556s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 556s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 556s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 556s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 556s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 556s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 556s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 556s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 556s # #else /* !G_ENABLE_DEBUG */ 556s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 556s # * Do not access GValues directly in your code. Instead, use the 556s # * g_value_get_*() functions 556s # */ 556s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 556s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 556s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 556s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 556s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 556s # #endif /* !G_ENABLE_DEBUG */ 556s # 556s # typedef struct 556s # { 556s # GDBusArgInfo parent_struct; 556s # gboolean use_gvariant; 556s # } _ExtendedGDBusArgInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusMethodInfo parent_struct; 556s # const gchar *signal_name; 556s # gboolean pass_fdlist; 556s # } _ExtendedGDBusMethodInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusSignalInfo parent_struct; 556s # const gchar *signal_name; 556s # } _ExtendedGDBusSignalInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusPropertyInfo parent_struct; 556s # const gchar *hyphen_name; 556s # guint use_gvariant : 1; 556s # guint emits_changed_signal : 1; 556s # } _ExtendedGDBusPropertyInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusInterfaceInfo parent_struct; 556s # const gchar *hyphen_name; 556s # } _ExtendedGDBusInterfaceInfo; 556s # 556s # typedef struct 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # guint prop_id; 556s # GValue orig_value; /* the value before the change */ 556s # } ChangedProperty; 556s # 556s # static void 556s # _changed_property_free (ChangedProperty *data) 556s # { 556s # g_value_unset (&data->orig_value); 556s # g_free (data); 556s # } 556s # 556s # static gboolean 556s # _g_strv_equal0 (gchar **a, gchar **b) 556s # { 556s # gboolean ret = FALSE; 556s # guint n; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # if (g_strv_length (a) != g_strv_length (b)) 556s # goto out; 556s # for (n = 0; a[n] != NULL; n++) 556s # if (g_strcmp0 (a[n], b[n]) != 0) 556s # goto out; 556s # ret = TRUE; 556s # out: 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _g_variant_equal0 (GVariant *a, GVariant *b) 556s # { 556s # gboolean ret = FALSE; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # ret = g_variant_equal (a, b); 556s # out: 556s # return ret; 556s # } 556s # 556s # G_GNUC_UNUSED static gboolean 556s # _g_value_equal (const GValue *a, const GValue *b) 556s # { 556s # gboolean ret = FALSE; 556s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 556s # switch (G_VALUE_TYPE (a)) 556s # { 556s # case G_TYPE_BOOLEAN: 556s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 556s # break; 556s # case G_TYPE_UCHAR: 556s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 556s # break; 556s # case G_TYPE_INT: 556s # ret = (g_value_get_int (a) == g_value_get_int (b)); 556s # break; 556s # case G_TYPE_UINT: 556s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 556s # break; 556s # case G_TYPE_INT64: 556s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 556s # break; 556s # case G_TYPE_UINT64: 556s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 556s # break; 556s # case G_TYPE_DOUBLE: 556s # { 556s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 556s # gdouble da = g_value_get_double (a); 556s # gdouble db = g_value_get_double (b); 556s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 556s # } 556s # break; 556s # case G_TYPE_STRING: 556s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 556s # break; 556s # case G_TYPE_VARIANT: 556s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 556s # break; 556s # default: 556s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 556s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 556s # else 556s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 556s # break; 556s # } 556s # return ret; 556s # } 556s # 556s # /* ------------------------------------------------------------------------ 556s # * Code for interface GoodTypes 556s # * ------------------------------------------------------------------------ 556s # */ 556s # 556s # /** 556s # * SECTION:GoodTypes 556s # * @title: GoodTypes 556s # * @short_description: Generated C code for the GoodTypes D-Bus interface 556s # * 556s # * This section contains code for working with the GoodTypes D-Bus interface in C. 556s # */ 556s # 556s # /* ---- Introspection data for GoodTypes ---- */ 556s # 556s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodPropertyType", 556s # (gchar *) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas", 556s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 556s # NULL 556s # }, 556s # "good-property-type", 556s # FALSE, 556s # TRUE 556s # }; 556s # 556s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 556s # { 556s # &_good_types_property_info_good_property_type.parent_struct, 556s # NULL 556s # }; 556s # 556s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodTypes", 556s # NULL, 556s # NULL, 556s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 556s # NULL 556s # }, 556s # "good-types", 556s # }; 556s # 556s # 556s # /** 556s # * good_types_interface_info: 556s # * 556s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 556s # * 556s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 556s # */ 556s # GDBusInterfaceInfo * 556s # good_types_interface_info (void) 556s # { 556s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 556s # } 556s # 556s # /** 556s # * good_types_override_properties: 556s # * @klass: The class structure for a #GObject derived class. 556s # * @property_id_begin: The property id to assign to the first overridden property. 556s # * 556s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 556s # * The properties are overridden in the order they are defined. 556s # * 556s # * Returns: The last property id. 556s # */ 556s # guint 556s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 556s # { 556s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 556s # return property_id_begin - 1; 556s # } 556s # 556s # 556s # 556s # /** 556s # * GoodTypes: 556s # * 556s # * Abstract interface type for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # /** 556s # * GoodTypesIface: 556s # * @parent_iface: The parent interface. 556s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 556s # * 556s # * Virtual table for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # typedef GoodTypesIface GoodTypesInterface; 556s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 556s # 556s # static void 556s # good_types_default_init (GoodTypesIface *iface) 556s # { 556s # /* GObject properties for D-Bus properties: */ 556s # /** 556s # * GoodTypes:good-property-type: 556s # * 556s # * Represents the D-Bus property "GoodPropertyType". 556s # * 556s # * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. 556s # */ 556s # g_object_interface_install_property (iface, 556s # g_param_spec_variant ("good-property-type", "GoodPropertyType", "GoodPropertyType", G_VARIANT_TYPE ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas"), NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 556s # } 556s # 556s # /** 556s # * good_types_get_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets the value of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use good_types_dup_good_property_type() if on another thread. 556s # * 556s # * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. 556s # */ 556s # GVariant * 556s # good_types_get_good_property_type (GoodTypes *object) 556s # { 556s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 556s # 556s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 556s # } 556s # 556s # /** 556s # * good_types_dup_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets a copy of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_variant_unref(). 556s # */ 556s # GVariant * 556s # good_types_dup_good_property_type (GoodTypes *object) 556s # { 556s # GVariant *value; 556s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 556s # return value; 556s # } 556s # 556s # /** 556s # * good_types_set_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * @value: The value to set. 556s # * 556s # * Sets the "GoodPropertyType" D-Bus property to @value. 556s # * 556s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 556s # */ 556s # void 556s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 556s # { 556s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 556s # } 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesProxy: 556s # * 556s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesProxyClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesProxy. 556s # */ 556s # 556s # struct _GoodTypesProxyPrivate 556s # { 556s # GData *qdata; 556s # }; 556s # 556s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_ADD_PRIVATE (GoodTypesProxy) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_proxy_finalize (GObject *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # g_datalist_clear (&proxy->priv->qdata); 556s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_proxy_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 556s # if (info->use_gvariant) 556s # { 556s # g_value_set_variant (value, variant); 556s # } 556s # else 556s # { 556s # if (variant != NULL) 556s # g_dbus_gvariant_to_gvalue (variant, value); 556s # } 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 556s # GAsyncResult *res, 556s # gpointer user_data) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info = user_data; 556s # GError *error; 556s # GVariant *_ret; 556s # error = NULL; 556s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 556s # if (!_ret) 556s # { 556s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 556s # info->parent_struct.name, 556s # error->message, g_quark_to_string (error->domain), error->code); 556s # g_error_free (error); 556s # } 556s # else 556s # { 556s # g_variant_unref (_ret); 556s # } 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_dbus_proxy_call (G_DBUS_PROXY (object), 556s # "org.freedesktop.DBus.Properties.Set", 556s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 556s # G_DBUS_CALL_FLAGS_NONE, 556s # -1, 556s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_signal (GDBusProxy *proxy, 556s # const gchar *sender_name G_GNUC_UNUSED, 556s # const gchar *signal_name, 556s # GVariant *parameters) 556s # { 556s # _ExtendedGDBusSignalInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # gsize n; 556s # guint signal_id; 556s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 556s # if (info == NULL) 556s # return; 556s # num_params = g_variant_n_children (parameters); 556s # paramv = g_new0 (GValue, num_params + 1); 556s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[0], proxy); 556s # g_variant_iter_init (&iter, parameters); 556s # n = 1; 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_signal_emitv (paramv, signal_id, 0, NULL); 556s # for (n = 0; n < num_params + 1; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 556s # GVariant *changed_properties, 556s # const gchar *const *invalidated_properties) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 556s # guint n; 556s # const gchar *key; 556s # GVariantIter *iter; 556s # _ExtendedGDBusPropertyInfo *info; 556s # g_variant_get (changed_properties, "a{sv}", &iter); 556s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 556s # g_datalist_remove_data (&proxy->priv->qdata, key); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # g_variant_iter_free (iter); 556s # for (n = 0; invalidated_properties[n] != NULL; n++) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 556s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # } 556s # 556s # static GVariant * 556s # good_types_proxy_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # GVariant *variant; 556s # GVariant *value = NULL; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 556s # value = variant; 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_proxy_init (GoodTypesProxy *proxy) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # proxy->priv = good_types_proxy_get_instance_private (proxy); 556s # #else 556s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 556s # #endif 556s # 556s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 556s # } 556s # 556s # static void 556s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusProxyClass *proxy_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_proxy_finalize; 556s # gobject_class->get_property = good_types_proxy_get_property; 556s # gobject_class->set_property = good_types_proxy_set_property; 556s # 556s # proxy_class = G_DBUS_PROXY_CLASS (klass); 556s # proxy_class->g_signal = good_types_proxy_g_signal; 556s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_proxy_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_sync: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /** 556s # * good_types_proxy_new_for_bus: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new_for_bus(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_sync: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesSkeleton: 556s # * 556s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesSkeletonClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesSkeleton. 556s # */ 556s # 556s # struct _GoodTypesSkeletonPrivate 556s # { 556s # GValue *properties; 556s # GList *changed_properties; 556s # GSource *changed_properties_idle_source; 556s # GMainContext *context; 556s # GMutex lock; 556s # }; 556s # 556s # static void 556s # _good_types_skeleton_handle_method_call ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name, 556s # const gchar *method_name, 556s # GVariant *parameters, 556s # GDBusMethodInvocation *invocation, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # _ExtendedGDBusMethodInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # guint num_extra; 556s # gsize n; 556s # guint signal_id; 556s # GValue return_value = G_VALUE_INIT; 556s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 556s # g_assert (info != NULL); 556s # num_params = g_variant_n_children (parameters); 556s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 556s # n = 0; 556s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[n++], skeleton); 556s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 556s # g_value_set_object (¶mv[n++], invocation); 556s # if (info->pass_fdlist) 556s # { 556s # #ifdef G_OS_UNIX 556s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 556s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 556s # #else 556s # g_assert_not_reached (); 556s # #endif 556s # } 556s # g_variant_iter_init (&iter, parameters); 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_value_init (&return_value, G_TYPE_BOOLEAN); 556s # g_signal_emitv (paramv, signal_id, 0, &return_value); 556s # if (!g_value_get_boolean (&return_value)) 556s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 556s # g_value_unset (&return_value); 556s # for (n = 0; n < num_params + num_extra; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static GVariant * 556s # _good_types_skeleton_handle_get_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # GVariant *ret; 556s # ret = NULL; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # g_value_init (&value, pspec->value_type); 556s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_value_unset (&value); 556s # } 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _good_types_skeleton_handle_set_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GVariant *variant, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # gboolean ret; 556s # ret = FALSE; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # if (info->use_gvariant) 556s # g_value_set_variant (&value, variant); 556s # else 556s # g_dbus_gvariant_to_gvalue (variant, &value); 556s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # g_value_unset (&value); 556s # ret = TRUE; 556s # } 556s # return ret; 556s # } 556s # 556s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 556s # { 556s # _good_types_skeleton_handle_method_call, 556s # _good_types_skeleton_handle_get_property, 556s # _good_types_skeleton_handle_set_property, 556s # {NULL} 556s # }; 556s # 556s # static GDBusInterfaceInfo * 556s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return good_types_interface_info (); 556s # } 556s # 556s # static GDBusInterfaceVTable * 556s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # 556s # GVariantBuilder builder; 556s # guint n; 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #else 556s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #endif 556s # if (_good_types_interface_info.parent_struct.properties == NULL) 556s # goto out; 556s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 556s # { 556s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 556s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 556s # { 556s # GVariant *value; 556s # value = _good_types_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "GoodTypes", info->name, NULL, skeleton); 556s # if (value != NULL) 556s # { 556s # g_variant_take_ref (value); 556s # g_variant_builder_add (&builder, "{sv}", info->name, value); 556s # g_variant_unref (value); 556s # } 556s # } 556s # } 556s # out: 556s # return g_variant_builder_end (&builder); 556s # } 556s # 556s # static gboolean _good_types_emit_changed (gpointer user_data); 556s # 556s # static void 556s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # gboolean emit_changed = FALSE; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # { 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # emit_changed = TRUE; 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # 556s # if (emit_changed) 556s # _good_types_emit_changed (skeleton); 556s # } 556s # 556s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_ADD_PRIVATE (GoodTypesSkeleton) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_skeleton_finalize (GObject *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # guint n; 556s # for (n = 0; n < 1; n++) 556s # g_value_unset (&skeleton->priv->properties[n]); 556s # g_free (skeleton->priv->properties); 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # g_main_context_unref (skeleton->priv->context); 556s # g_mutex_clear (&skeleton->priv->lock); 556s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static gboolean 556s # _good_types_emit_changed (gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GList *l; 556s # GVariantBuilder builder; 556s # GVariantBuilder invalidated_builder; 556s # guint num_changes; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #else 556s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #endif 556s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *cp = l->data; 556s # GVariant *variant; 556s # const GValue *cur_value; 556s # 556s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 556s # if (!_g_value_equal (cur_value, &cp->orig_value)) 556s # { 556s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 556s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 556s # g_variant_unref (variant); 556s # num_changes++; 556s # } 556s # } 556s # if (num_changes > 0) 556s # { 556s # GList *connections, *ll; 556s # GVariant *signal_variant; 556s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 556s # &builder, &invalidated_builder)); 556s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 556s # for (ll = connections; ll != NULL; ll = ll->next) 556s # { 556s # GDBusConnection *connection = ll->data; 556s # 556s # g_dbus_connection_emit_signal (connection, 556s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 556s # "org.freedesktop.DBus.Properties", 556s # "PropertiesChanged", 556s # signal_variant, 556s # NULL); 556s # } 556s # g_variant_unref (signal_variant); 556s # g_list_free_full (connections, g_object_unref); 556s # } 556s # else 556s # { 556s # g_variant_builder_clear (&builder); 556s # g_variant_builder_clear (&invalidated_builder); 556s # } 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # skeleton->priv->changed_properties = NULL; 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return FALSE; 556s # } 556s # 556s # static void 556s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 556s # { 556s # ChangedProperty *cp; 556s # GList *l; 556s # cp = NULL; 556s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *i_cp = l->data; 556s # if (i_cp->info == info) 556s # { 556s # cp = i_cp; 556s # break; 556s # } 556s # } 556s # if (cp == NULL) 556s # { 556s # cp = g_new0 (ChangedProperty, 1); 556s # cp->prop_id = prop_id; 556s # cp->info = info; 556s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 556s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 556s # g_value_copy (orig_value, &cp->orig_value); 556s # } 556s # } 556s # 556s # static void 556s # good_types_skeleton_notify (GObject *object, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties != NULL && 556s # skeleton->priv->changed_properties_idle_source == NULL) 556s # { 556s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 556s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 556s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 556s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 556s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 556s # g_source_unref (skeleton->priv->changed_properties_idle_source); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static void 556s # good_types_skeleton_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_object_freeze_notify (object); 556s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 556s # { 556s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 556s # info->emits_changed_signal) 556s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 556s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 556s # g_object_notify_by_pspec (object, pspec); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # g_object_thaw_notify (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 556s # #else 556s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 556s # #endif 556s # 556s # g_mutex_init (&skeleton->priv->lock); 556s # skeleton->priv->context = g_main_context_ref_thread_default (); 556s # skeleton->priv->properties = g_new0 (GValue, 1); 556s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # GVariant *value; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusInterfaceSkeletonClass *skeleton_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_skeleton_finalize; 556s # gobject_class->get_property = good_types_skeleton_get_property; 556s # gobject_class->set_property = good_types_skeleton_set_property; 556s # gobject_class->notify = good_types_skeleton_notify; 556s # 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 556s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 556s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 556s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 556s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_skeleton_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_skeleton_new: 556s # * 556s # * Creates a skeleton object for the D-Bus interface GoodTypes. 556s # * 556s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 556s # */ 556s # GoodTypes * 556s # good_types_skeleton_new (void) 556s # { 556s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 556s # } 556s # Error: 556s # 556s # /tmp/tmpamyedkbd/tmp04enm7xt.xml: 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpamyedkbd/tmp04enm7xt.xml', '--output', '-', '--body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # #ifdef G_OS_UNIX 556s # # include 556s # #endif 556s # 556s # #ifdef G_ENABLE_DEBUG 556s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 556s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 556s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 556s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 556s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 556s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 556s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 556s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 556s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 556s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 556s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 556s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 556s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 556s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 556s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 556s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 556s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 556s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 556s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 556s # #else /* !G_ENABLE_DEBUG */ 556s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 556s # * Do not access GValues directly in your code. Instead, use the 556s # * g_value_get_*() functions 556s # */ 556s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 556s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 556s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 556s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 556s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 556s # #endif /* !G_ENABLE_DEBUG */ 556s # 556s # typedef struct 556s # { 556s # GDBusArgInfo parent_struct; 556s # gboolean use_gvariant; 556s # } _ExtendedGDBusArgInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusMethodInfo parent_struct; 556s # const gchar *signal_name; 556s # gboolean pass_fdlist; 556s # } _ExtendedGDBusMethodInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusSignalInfo parent_struct; 556s # const gchar *signal_name; 556s # } _ExtendedGDBusSignalInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusPropertyInfo parent_struct; 556s # const gchar *hyphen_name; 556s # guint use_gvariant : 1; 556s # guint emits_changed_signal : 1; 556s # } _ExtendedGDBusPropertyInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusInterfaceInfo parent_struct; 556s # const gchar *hyphen_name; 556s # } _ExtendedGDBusInterfaceInfo; 556s # 556s # typedef struct 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # guint prop_id; 556s # GValue orig_value; /* the value before the change */ 556s # } ChangedProperty; 556s # 556s # static void 556s # _changed_property_free (ChangedProperty *data) 556s # { 556s # g_value_unset (&data->orig_value); 556s # g_free (data); 556s # } 556s # 556s # static gboolean 556s # _g_strv_equal0 (gchar **a, gchar **b) 556s # { 556s # gboolean ret = FALSE; 556s # guint n; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # if (g_strv_length (a) != g_strv_length (b)) 556s # goto out; 556s # for (n = 0; a[n] != NULL; n++) 556s # if (g_strcmp0 (a[n], b[n]) != 0) 556s # goto out; 556s # ret = TRUE; 556s # out: 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _g_variant_equal0 (GVariant *a, GVariant *b) 556s # { 556s # gboolean ret = FALSE; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # ret = g_variant_equal (a, b); 556s # out: 556s # return ret; 556s # } 556s # 556s # G_GNUC_UNUSED static gboolean 556s # _g_value_equal (const GValue *a, const GValue *b) 556s # { 556s # gboolean ret = FALSE; 556s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 556s # switch (G_VALUE_TYPE (a)) 556s # { 556s # case G_TYPE_BOOLEAN: 556s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 556s # break; 556s # case G_TYPE_UCHAR: 556s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 556s # break; 556s # case G_TYPE_INT: 556s # ret = (g_value_get_int (a) == g_value_get_int (b)); 556s # break; 556s # case G_TYPE_UINT: 556s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 556s # break; 556s # case G_TYPE_INT64: 556s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 556s # break; 556s # case G_TYPE_UINT64: 556s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 556s # break; 556s # case G_TYPE_DOUBLE: 556s # { 556s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 556s # gdouble da = g_value_get_double (a); 556s # gdouble db = g_value_get_double (b); 556s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 556s # } 556s # break; 556s # case G_TYPE_STRING: 556s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 556s # break; 556s # case G_TYPE_VARIANT: 556s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 556s # break; 556s # default: 556s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 556s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 556s # else 556s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 556s # break; 556s # } 556s # return ret; 556s # } 556s # 556s # /* ------------------------------------------------------------------------ 556s # * Code for interface GoodTypes 556s # * ------------------------------------------------------------------------ 556s # */ 556s # 556s # /** 556s # * SECTION:GoodTypes 556s # * @title: GoodTypes 556s # * @short_description: Generated C code for the GoodTypes D-Bus interface 556s # * 556s # * This section contains code for working with the GoodTypes D-Bus interface in C. 556s # */ 556s # 556s # /* ---- Introspection data for GoodTypes ---- */ 556s # 556s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodPropertyType", 556s # (gchar *) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa{sv})", 556s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 556s # NULL 556s # }, 556s # "good-property-type", 556s # FALSE, 556s # TRUE 556s # }; 556s # 556s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 556s # { 556s # &_good_types_property_info_good_property_type.parent_struct, 556s # NULL 556s # }; 556s # 556s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 556s # { 556s # { 556s # -1, 556s # (gchar *) "GoodTypes", 556s # NULL, 556s # NULL, 556s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 556s # NULL 556s # }, 556s # "good-types", 556s # }; 556s # 556s # 556s # /** 556s # * good_types_interface_info: 556s # * 556s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 556s # * 556s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 556s # */ 556s # GDBusInterfaceInfo * 556s # good_types_interface_info (void) 556s # { 556s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 556s # } 556s # 556s # /** 556s # * good_types_override_properties: 556s # * @klass: The class structure for a #GObject derived class. 556s # * @property_id_begin: The property id to assign to the first overridden property. 556s # * 556s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 556s # * The properties are overridden in the order they are defined. 556s # * 556s # * Returns: The last property id. 556s # */ 556s # guint 556s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 556s # { 556s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 556s # return property_id_begin - 1; 556s # } 556s # 556s # 556s # 556s # /** 556s # * GoodTypes: 556s # * 556s # * Abstract interface type for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # /** 556s # * GoodTypesIface: 556s # * @parent_iface: The parent interface. 556s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 556s # * 556s # * Virtual table for the D-Bus interface GoodTypes. 556s # */ 556s # 556s # typedef GoodTypesIface GoodTypesInterface; 556s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 556s # 556s # static void 556s # good_types_default_init (GoodTypesIface *iface) 556s # { 556s # /* GObject properties for D-Bus properties: */ 556s # /** 556s # * GoodTypes:good-property-type: 556s # * 556s # * Represents the D-Bus property "GoodPropertyType". 556s # * 556s # * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. 556s # */ 556s # g_object_interface_install_property (iface, 556s # g_param_spec_variant ("good-property-type", "GoodPropertyType", "GoodPropertyType", G_VARIANT_TYPE ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa{sv})"), NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 556s # } 556s # 556s # /** 556s # * good_types_get_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets the value of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use good_types_dup_good_property_type() if on another thread. 556s # * 556s # * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. 556s # */ 556s # GVariant * 556s # good_types_get_good_property_type (GoodTypes *object) 556s # { 556s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 556s # 556s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 556s # } 556s # 556s # /** 556s # * good_types_dup_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * 556s # * Gets a copy of the "GoodPropertyType" D-Bus property. 556s # * 556s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 556s # * 556s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_variant_unref(). 556s # */ 556s # GVariant * 556s # good_types_dup_good_property_type (GoodTypes *object) 556s # { 556s # GVariant *value; 556s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 556s # return value; 556s # } 556s # 556s # /** 556s # * good_types_set_good_property_type: (skip) 556s # * @object: A GoodTypes. 556s # * @value: The value to set. 556s # * 556s # * Sets the "GoodPropertyType" D-Bus property to @value. 556s # * 556s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 556s # */ 556s # void 556s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 556s # { 556s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 556s # } 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesProxy: 556s # * 556s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesProxyClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesProxy. 556s # */ 556s # 556s # struct _GoodTypesProxyPrivate 556s # { 556s # GData *qdata; 556s # }; 556s # 556s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_ADD_PRIVATE (GoodTypesProxy) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_proxy_finalize (GObject *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # g_datalist_clear (&proxy->priv->qdata); 556s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_proxy_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 556s # if (info->use_gvariant) 556s # { 556s # g_value_set_variant (value, variant); 556s # } 556s # else 556s # { 556s # if (variant != NULL) 556s # g_dbus_gvariant_to_gvalue (variant, value); 556s # } 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 556s # GAsyncResult *res, 556s # gpointer user_data) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info = user_data; 556s # GError *error; 556s # GVariant *_ret; 556s # error = NULL; 556s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 556s # if (!_ret) 556s # { 556s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 556s # info->parent_struct.name, 556s # error->message, g_quark_to_string (error->domain), error->code); 556s # g_error_free (error); 556s # } 556s # else 556s # { 556s # g_variant_unref (_ret); 556s # } 556s # } 556s # 556s # static void 556s # good_types_proxy_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GVariant *variant; 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_dbus_proxy_call (G_DBUS_PROXY (object), 556s # "org.freedesktop.DBus.Properties.Set", 556s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 556s # G_DBUS_CALL_FLAGS_NONE, 556s # -1, 556s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 556s # g_variant_unref (variant); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_signal (GDBusProxy *proxy, 556s # const gchar *sender_name G_GNUC_UNUSED, 556s # const gchar *signal_name, 556s # GVariant *parameters) 556s # { 556s # _ExtendedGDBusSignalInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # gsize n; 556s # guint signal_id; 556s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 556s # if (info == NULL) 556s # return; 556s # num_params = g_variant_n_children (parameters); 556s # paramv = g_new0 (GValue, num_params + 1); 556s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[0], proxy); 556s # g_variant_iter_init (&iter, parameters); 556s # n = 1; 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_signal_emitv (paramv, signal_id, 0, NULL); 556s # for (n = 0; n < num_params + 1; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static void 556s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 556s # GVariant *changed_properties, 556s # const gchar *const *invalidated_properties) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 556s # guint n; 556s # const gchar *key; 556s # GVariantIter *iter; 556s # _ExtendedGDBusPropertyInfo *info; 556s # g_variant_get (changed_properties, "a{sv}", &iter); 556s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 556s # g_datalist_remove_data (&proxy->priv->qdata, key); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # g_variant_iter_free (iter); 556s # for (n = 0; invalidated_properties[n] != NULL; n++) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 556s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # } 556s # 556s # static GVariant * 556s # good_types_proxy_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 556s # GVariant *variant; 556s # GVariant *value = NULL; 556s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 556s # value = variant; 556s # if (variant != NULL) 556s # g_variant_unref (variant); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_proxy_init (GoodTypesProxy *proxy) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # proxy->priv = good_types_proxy_get_instance_private (proxy); 556s # #else 556s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 556s # #endif 556s # 556s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 556s # } 556s # 556s # static void 556s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusProxyClass *proxy_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_proxy_finalize; 556s # gobject_class->get_property = good_types_proxy_get_property; 556s # gobject_class->set_property = good_types_proxy_set_property; 556s # 556s # proxy_class = G_DBUS_PROXY_CLASS (klass); 556s # proxy_class->g_signal = good_types_proxy_g_signal; 556s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_proxy_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_sync: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /** 556s # * good_types_proxy_new_for_bus: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 556s # * 556s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # good_types_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_GOOD_TYPES_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with good_types_proxy_new_for_bus(). 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * good_types_proxy_new_for_bus_sync: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # GoodTypes * 556s # good_types_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_GOOD_TYPES_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "GoodTypes", NULL); 556s # if (ret != NULL) 556s # return GOOD_TYPES (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * GoodTypesSkeleton: 556s # * 556s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * GoodTypesSkeletonClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for GoodTypesSkeleton. 556s # */ 556s # 556s # struct _GoodTypesSkeletonPrivate 556s # { 556s # GValue *properties; 556s # GList *changed_properties; 556s # GSource *changed_properties_idle_source; 556s # GMainContext *context; 556s # GMutex lock; 556s # }; 556s # 556s # static void 556s # _good_types_skeleton_handle_method_call ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name, 556s # const gchar *method_name, 556s # GVariant *parameters, 556s # GDBusMethodInvocation *invocation, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # _ExtendedGDBusMethodInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # guint num_extra; 556s # gsize n; 556s # guint signal_id; 556s # GValue return_value = G_VALUE_INIT; 556s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 556s # g_assert (info != NULL); 556s # num_params = g_variant_n_children (parameters); 556s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 556s # n = 0; 556s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 556s # g_value_set_object (¶mv[n++], skeleton); 556s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 556s # g_value_set_object (¶mv[n++], invocation); 556s # if (info->pass_fdlist) 556s # { 556s # #ifdef G_OS_UNIX 556s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 556s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 556s # #else 556s # g_assert_not_reached (); 556s # #endif 556s # } 556s # g_variant_iter_init (&iter, parameters); 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 556s # g_value_init (&return_value, G_TYPE_BOOLEAN); 556s # g_signal_emitv (paramv, signal_id, 0, &return_value); 556s # if (!g_value_get_boolean (&return_value)) 556s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 556s # g_value_unset (&return_value); 556s # for (n = 0; n < num_params + num_extra; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static GVariant * 556s # _good_types_skeleton_handle_get_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # GVariant *ret; 556s # ret = NULL; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # g_value_init (&value, pspec->value_type); 556s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_value_unset (&value); 556s # } 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _good_types_skeleton_handle_set_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GVariant *variant, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # gboolean ret; 556s # ret = FALSE; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # if (info->use_gvariant) 556s # g_value_set_variant (&value, variant); 556s # else 556s # g_dbus_gvariant_to_gvalue (variant, &value); 556s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # g_value_unset (&value); 556s # ret = TRUE; 556s # } 556s # return ret; 556s # } 556s # 556s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 556s # { 556s # _good_types_skeleton_handle_method_call, 556s # _good_types_skeleton_handle_get_property, 556s # _good_types_skeleton_handle_set_property, 556s # {NULL} 556s # }; 556s # 556s # static GDBusInterfaceInfo * 556s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return good_types_interface_info (); 556s # } 556s # 556s # static GDBusInterfaceVTable * 556s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # 556s # GVariantBuilder builder; 556s # guint n; 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #else 556s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #endif 556s # if (_good_types_interface_info.parent_struct.properties == NULL) 556s # goto out; 556s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 556s # { 556s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 556s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 556s # { 556s # GVariant *value; 556s # value = _good_types_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "GoodTypes", info->name, NULL, skeleton); 556s # if (value != NULL) 556s # { 556s # g_variant_take_ref (value); 556s # g_variant_builder_add (&builder, "{sv}", info->name, value); 556s # g_variant_unref (value); 556s # } 556s # } 556s # } 556s # out: 556s # return g_variant_builder_end (&builder); 556s # } 556s # 556s # static gboolean _good_types_emit_changed (gpointer user_data); 556s # 556s # static void 556s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 556s # gboolean emit_changed = FALSE; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # { 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # emit_changed = TRUE; 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # 556s # if (emit_changed) 556s # _good_types_emit_changed (skeleton); 556s # } 556s # 556s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_ADD_PRIVATE (GoodTypesSkeleton) 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 556s # 556s # #endif 556s # static void 556s # good_types_skeleton_finalize (GObject *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # guint n; 556s # for (n = 0; n < 1; n++) 556s # g_value_unset (&skeleton->priv->properties[n]); 556s # g_free (skeleton->priv->properties); 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # if (skeleton->priv->changed_properties_idle_source != NULL) 556s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 556s # g_main_context_unref (skeleton->priv->context); 556s # g_mutex_clear (&skeleton->priv->lock); 556s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_get_property (GObject *object, 556s # guint prop_id, 556s # GValue *value, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static gboolean 556s # _good_types_emit_changed (gpointer user_data) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 556s # GList *l; 556s # GVariantBuilder builder; 556s # GVariantBuilder invalidated_builder; 556s # guint num_changes; 556s # 556s # g_mutex_lock (&skeleton->priv->lock); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #else 556s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 556s # #endif 556s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *cp = l->data; 556s # GVariant *variant; 556s # const GValue *cur_value; 556s # 556s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 556s # if (!_g_value_equal (cur_value, &cp->orig_value)) 556s # { 556s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 556s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 556s # g_variant_unref (variant); 556s # num_changes++; 556s # } 556s # } 556s # if (num_changes > 0) 556s # { 556s # GList *connections, *ll; 556s # GVariant *signal_variant; 556s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 556s # &builder, &invalidated_builder)); 556s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 556s # for (ll = connections; ll != NULL; ll = ll->next) 556s # { 556s # GDBusConnection *connection = ll->data; 556s # 556s # g_dbus_connection_emit_signal (connection, 556s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 556s # "org.freedesktop.DBus.Properties", 556s # "PropertiesChanged", 556s # signal_variant, 556s # NULL); 556s # } 556s # g_variant_unref (signal_variant); 556s # g_list_free_full (connections, g_object_unref); 556s # } 556s # else 556s # { 556s # g_variant_builder_clear (&builder); 556s # g_variant_builder_clear (&invalidated_builder); 556s # } 556s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 556s # skeleton->priv->changed_properties = NULL; 556s # skeleton->priv->changed_properties_idle_source = NULL; 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return FALSE; 556s # } 556s # 556s # static void 556s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 556s # { 556s # ChangedProperty *cp; 556s # GList *l; 556s # cp = NULL; 556s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 556s # { 556s # ChangedProperty *i_cp = l->data; 556s # if (i_cp->info == info) 556s # { 556s # cp = i_cp; 556s # break; 556s # } 556s # } 556s # if (cp == NULL) 556s # { 556s # cp = g_new0 (ChangedProperty, 1); 556s # cp->prop_id = prop_id; 556s # cp->info = info; 556s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 556s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 556s # g_value_copy (orig_value, &cp->orig_value); 556s # } 556s # } 556s # 556s # static void 556s # good_types_skeleton_notify (GObject *object, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_mutex_lock (&skeleton->priv->lock); 556s # if (skeleton->priv->changed_properties != NULL && 556s # skeleton->priv->changed_properties_idle_source == NULL) 556s # { 556s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 556s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 556s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 556s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 556s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 556s # g_source_unref (skeleton->priv->changed_properties_idle_source); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # } 556s # 556s # static void 556s # good_types_skeleton_set_property (GObject *object, 556s # guint prop_id, 556s # const GValue *value, 556s # GParamSpec *pspec) 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # g_assert (prop_id != 0 && prop_id - 1 < 1); 556s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # g_object_freeze_notify (object); 556s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 556s # { 556s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 556s # info->emits_changed_signal) 556s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 556s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 556s # g_object_notify_by_pspec (object, pspec); 556s # } 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # g_object_thaw_notify (object); 556s # } 556s # 556s # static void 556s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 556s # #else 556s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 556s # #endif 556s # 556s # g_mutex_init (&skeleton->priv->lock); 556s # skeleton->priv->context = g_main_context_ref_thread_default (); 556s # skeleton->priv->properties = g_new0 (GValue, 1); 556s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 556s # } 556s # 556s # static GVariant * 556s # good_types_skeleton_get_good_property_type (GoodTypes *object) 556s # { 556s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 556s # GVariant *value; 556s # g_mutex_lock (&skeleton->priv->lock); 556s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 556s # g_mutex_unlock (&skeleton->priv->lock); 556s # return value; 556s # } 556s # 556s # static void 556s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusInterfaceSkeletonClass *skeleton_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = good_types_skeleton_finalize; 556s # gobject_class->get_property = good_types_skeleton_get_property; 556s # gobject_class->set_property = good_types_skeleton_set_property; 556s # gobject_class->notify = good_types_skeleton_notify; 556s # 556s # 556s # good_types_override_properties (gobject_class, 1); 556s # 556s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 556s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 556s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 556s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 556s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # good_types_skeleton_iface_init (GoodTypesIface *iface) 556s # { 556s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 556s # } 556s # 556s # /** 556s # * good_types_skeleton_new: 556s # * 556s # * Creates a skeleton object for the D-Bus interface GoodTypes. 556s # * 556s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 556s # */ 556s # GoodTypes * 556s # good_types_skeleton_new (void) 556s # { 556s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 556s # } 556s # Error: 556s ok 3 __main__.TestCodegen.test_empty_interface_body 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmpawbg2taa 556s # /tmp/tmpawbg2taa/tmpzmb71l0t.xml: 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpawbg2taa/tmpzmb71l0t.xml', '--output', '-', '--body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # #ifdef G_OS_UNIX 556s # # include 556s # #endif 556s # 556s # #ifdef G_ENABLE_DEBUG 556s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 556s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 556s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 556s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 556s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 556s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 556s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 556s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 556s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 556s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 556s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 556s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 556s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 556s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 556s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 556s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 556s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 556s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 556s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 556s # #else /* !G_ENABLE_DEBUG */ 556s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 556s # * Do not access GValues directly in your code. Instead, use the 556s # * g_value_get_*() functions 556s # */ 556s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 556s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 556s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 556s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 556s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 556s # #endif /* !G_ENABLE_DEBUG */ 556s # 556s # typedef struct 556s # { 556s # GDBusArgInfo parent_struct; 556s # gboolean use_gvariant; 556s # } _ExtendedGDBusArgInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusMethodInfo parent_struct; 556s # const gchar *signal_name; 556s # gboolean pass_fdlist; 556s # } _ExtendedGDBusMethodInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusSignalInfo parent_struct; 556s # const gchar *signal_name; 556s # } _ExtendedGDBusSignalInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusPropertyInfo parent_struct; 556s # const gchar *hyphen_name; 556s # guint use_gvariant : 1; 556s # guint emits_changed_signal : 1; 556s # } _ExtendedGDBusPropertyInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusInterfaceInfo parent_struct; 556s # const gchar *hyphen_name; 556s # } _ExtendedGDBusInterfaceInfo; 556s # 556s # typedef struct 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # guint prop_id; 556s # GValue orig_value; /* the value before the change */ 556s # } ChangedProperty; 556s # 556s # static void 556s # _changed_property_free (ChangedProperty *data) 556s # { 556s # g_value_unset (&data->orig_value); 556s # g_free (data); 556s # } 556s # 556s # static gboolean 556s # _g_strv_equal0 (gchar **a, gchar **b) 556s # { 556s # gboolean ret = FALSE; 556s # guint n; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # if (g_strv_length (a) != g_strv_length (b)) 556s # goto out; 556s # for (n = 0; a[n] != NULL; n++) 556s # if (g_strcmp0 (a[n], b[n]) != 0) 556s # goto out; 556s # ret = TRUE; 556s # out: 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _g_variant_equal0 (GVariant *a, GVariant *b) 556s # { 556s # gboolean ret = FALSE; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # ret = g_variant_equal (a, b); 556s # out: 556s # return ret; 556s # } 556s # 556s # G_GNUC_UNUSED static gboolean 556s # _g_value_equal (const GValue *a, const GValue *b) 556s # { 556s # gboolean ret = FALSE; 556s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 556s # switch (G_VALUE_TYPE (a)) 556s # { 556s # case G_TYPE_BOOLEAN: 556s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 556s # break; 556s # case G_TYPE_UCHAR: 556s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 556s # break; 556s # case G_TYPE_INT: 556s # ret = (g_value_get_int (a) == g_value_get_int (b)); 556s # break; 556s # case G_TYPE_UINT: 556s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 556s # break; 556s # case G_TYPE_INT64: 556s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 556s # break; 556s # case G_TYPE_UINT64: 556s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 556s # break; 556s # case G_TYPE_DOUBLE: 556s # { 556s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 556s # gdouble da = g_value_get_double (a); 556s # gdouble db = g_value_get_double (b); 556s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 556s # } 556s # break; 556s # case G_TYPE_STRING: 556s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 556s # break; 556s # case G_TYPE_VARIANT: 556s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 556s # break; 556s # default: 556s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 556s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 556s # else 556s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 556s # break; 556s # } 556s # return ret; 556s # } 556s # Error: 556s ok 4 __main__.TestCodegen.test_empty_interface_header 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmpd8e00nh7 556s # /tmp/tmpd8e00nh7/tmp5utm3fci.xml: 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd8e00nh7/tmp5utm3fci.xml', '--output', '-', '--header'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifndef __STDOUT__ 556s # #define __STDOUT__ 556s # 556s # #include 556s # 556s # G_BEGIN_DECLS 556s # 556s # 556s # G_END_DECLS 556s # 556s # #endif /* __STDOUT__ */ 556s # Error: 556s ok 5 __main__.TestCodegen.test_empty_interface_info_body 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmp3r14w8pm 556s # /tmp/tmp3r14w8pm/tmpp_kvp928.xml: 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp3r14w8pm/tmpp_kvp928.xml', '--output', '-', '--interface-info-body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # Error: 556s ok 6 __main__.TestCodegen.test_empty_interface_info_header 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmpdgxt89sz 556s # /tmp/tmpdgxt89sz/tmp07sjyayn.xml: 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpdgxt89sz/tmp07sjyayn.xml', '--output', '-', '--interface-info-header'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifndef __STDOUT__ 556s # #define __STDOUT__ 556s # 556s # #include 556s # 556s # G_BEGIN_DECLS 556s # 556s # 556s # G_END_DECLS 556s # 556s # #endif /* __STDOUT__ */ 556s # Error: 556s ok 7 __main__.TestCodegen.test_generate_docbook 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmprs4h5k4r 556s # /tmp/tmprs4h5k4r/tmpex7f6hpp.xml: 556s # 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmprs4h5k4r/tmpex7f6hpp.xml', '--generate-docbook', 'test'] 556s # Return code: 0 556s # Output: 556s # 556s # Error: 556s ok 8 __main__.TestCodegen.test_generate_md 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmp3fu7h6pr 556s # /tmp/tmp3fu7h6pr/tmp25mi4s_v.xml: 556s # 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp3fu7h6pr/tmp25mi4s_v.xml', '--generate-md', 'test'] 556s # Return code: 0 556s # Output: 556s # 556s # Error: 556s ok 9 __main__.TestCodegen.test_generate_methods_marshaller_simple_method 556s # gdbus-codegen: /usr/bin/gdbus-codegen 556s # tmpdir: /tmp/tmpy2p5jp1j 556s # /tmp/tmpy2p5jp1j/tmph6nmyikc.xml: 556s # 556s # 556s # 556s # 556s # 556s # 556s # 556s # 556s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpy2p5jp1j/tmph6nmyikc.xml', '--output', '-', '--body'] 556s # Return code: 0 556s # Output: 556s # /* 556s # * This file is generated by gdbus-codegen, do not modify it. 556s # * 556s # * The license of this code is the same as for the D-Bus interface description 556s # * it was derived from. Note that it links to GLib, so must comply with the 556s # * LGPL linking clauses. 556s # */ 556s # 556s # #ifdef HAVE_CONFIG_H 556s # # include "config.h" 556s # #endif 556s # 556s # #include 556s # #ifdef G_OS_UNIX 556s # # include 556s # #endif 556s # 556s # #ifdef G_ENABLE_DEBUG 556s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 556s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 556s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 556s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 556s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 556s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 556s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 556s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 556s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 556s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 556s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 556s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 556s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 556s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 556s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 556s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 556s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 556s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 556s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 556s # #else /* !G_ENABLE_DEBUG */ 556s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 556s # * Do not access GValues directly in your code. Instead, use the 556s # * g_value_get_*() functions 556s # */ 556s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 556s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 556s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 556s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 556s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 556s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 556s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 556s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 556s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 556s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 556s # #endif /* !G_ENABLE_DEBUG */ 556s # 556s # typedef struct 556s # { 556s # GDBusArgInfo parent_struct; 556s # gboolean use_gvariant; 556s # } _ExtendedGDBusArgInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusMethodInfo parent_struct; 556s # const gchar *signal_name; 556s # gboolean pass_fdlist; 556s # } _ExtendedGDBusMethodInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusSignalInfo parent_struct; 556s # const gchar *signal_name; 556s # } _ExtendedGDBusSignalInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusPropertyInfo parent_struct; 556s # const gchar *hyphen_name; 556s # guint use_gvariant : 1; 556s # guint emits_changed_signal : 1; 556s # } _ExtendedGDBusPropertyInfo; 556s # 556s # typedef struct 556s # { 556s # GDBusInterfaceInfo parent_struct; 556s # const gchar *hyphen_name; 556s # } _ExtendedGDBusInterfaceInfo; 556s # 556s # typedef struct 556s # { 556s # const _ExtendedGDBusPropertyInfo *info; 556s # guint prop_id; 556s # GValue orig_value; /* the value before the change */ 556s # } ChangedProperty; 556s # 556s # static void 556s # _changed_property_free (ChangedProperty *data) 556s # { 556s # g_value_unset (&data->orig_value); 556s # g_free (data); 556s # } 556s # 556s # static gboolean 556s # _g_strv_equal0 (gchar **a, gchar **b) 556s # { 556s # gboolean ret = FALSE; 556s # guint n; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # if (g_strv_length (a) != g_strv_length (b)) 556s # goto out; 556s # for (n = 0; a[n] != NULL; n++) 556s # if (g_strcmp0 (a[n], b[n]) != 0) 556s # goto out; 556s # ret = TRUE; 556s # out: 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _g_variant_equal0 (GVariant *a, GVariant *b) 556s # { 556s # gboolean ret = FALSE; 556s # if (a == NULL && b == NULL) 556s # { 556s # ret = TRUE; 556s # goto out; 556s # } 556s # if (a == NULL || b == NULL) 556s # goto out; 556s # ret = g_variant_equal (a, b); 556s # out: 556s # return ret; 556s # } 556s # 556s # G_GNUC_UNUSED static gboolean 556s # _g_value_equal (const GValue *a, const GValue *b) 556s # { 556s # gboolean ret = FALSE; 556s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 556s # switch (G_VALUE_TYPE (a)) 556s # { 556s # case G_TYPE_BOOLEAN: 556s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 556s # break; 556s # case G_TYPE_UCHAR: 556s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 556s # break; 556s # case G_TYPE_INT: 556s # ret = (g_value_get_int (a) == g_value_get_int (b)); 556s # break; 556s # case G_TYPE_UINT: 556s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 556s # break; 556s # case G_TYPE_INT64: 556s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 556s # break; 556s # case G_TYPE_UINT64: 556s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 556s # break; 556s # case G_TYPE_DOUBLE: 556s # { 556s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 556s # gdouble da = g_value_get_double (a); 556s # gdouble db = g_value_get_double (b); 556s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 556s # } 556s # break; 556s # case G_TYPE_STRING: 556s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 556s # break; 556s # case G_TYPE_VARIANT: 556s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 556s # break; 556s # default: 556s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 556s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 556s # else 556s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 556s # break; 556s # } 556s # return ret; 556s # } 556s # 556s # static void 556s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 556s # GClosure *closure, 556s # GValue *return_value, 556s # unsigned int n_param_values, 556s # const GValue *param_values, 556s # void *invocation_hint G_GNUC_UNUSED, 556s # void *marshal_data) 556s # { 556s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 556s # (void *data1, 556s # GDBusMethodInvocation *arg_method_invocation, 556s # void *data2); 556s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 556s # GCClosure *cc = (GCClosure*) closure; 556s # void *data1, *data2; 556s # gboolean v_return; 556s # 556s # g_return_if_fail (return_value != NULL); 556s # g_return_if_fail (n_param_values == 2); 556s # 556s # if (G_CCLOSURE_SWAP_DATA (closure)) 556s # { 556s # data1 = closure->data; 556s # data2 = g_value_peek_pointer (param_values + 0); 556s # } 556s # else 556s # { 556s # data1 = g_value_peek_pointer (param_values + 0); 556s # data2 = closure->data; 556s # } 556s # 556s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 556s # (marshal_data ? marshal_data : cc->callback); 556s # 556s # v_return = 556s # callback (data1, 556s # g_marshal_value_peek_object (param_values + 1), 556s # data2); 556s # 556s # g_value_set_boolean (return_value, v_return); 556s # } 556s # 556s # /* ------------------------------------------------------------------------ 556s # * Code for interface org.project.CallableIface 556s # * ------------------------------------------------------------------------ 556s # */ 556s # 556s # /** 556s # * SECTION:OrgProjectCallableIface 556s # * @title: OrgProjectCallableIface 556s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 556s # * 556s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 556s # */ 556s # 556s # /* ---- Introspection data for org.project.CallableIface ---- */ 556s # 556s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_simple_method = 556s # { 556s # { 556s # -1, 556s # (gchar *) "SimpleMethod", 556s # NULL, 556s # NULL, 556s # NULL 556s # }, 556s # "handle-simple-method", 556s # FALSE 556s # }; 556s # 556s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 556s # { 556s # &_org_project_callable_iface_method_info_simple_method.parent_struct, 556s # NULL 556s # }; 556s # 556s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 556s # { 556s # { 556s # -1, 556s # (gchar *) "org.project.CallableIface", 556s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 556s # NULL, 556s # NULL, 556s # NULL 556s # }, 556s # "org-project-callable-iface", 556s # }; 556s # 556s # 556s # /** 556s # * org_project_callable_iface_interface_info: 556s # * 556s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 556s # * 556s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 556s # */ 556s # GDBusInterfaceInfo * 556s # org_project_callable_iface_interface_info (void) 556s # { 556s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_override_properties: 556s # * @klass: The class structure for a #GObject derived class. 556s # * @property_id_begin: The property id to assign to the first overridden property. 556s # * 556s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 556s # * The properties are overridden in the order they are defined. 556s # * 556s # * Returns: The last property id. 556s # */ 556s # guint 556s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 556s # { 556s # return property_id_begin - 1; 556s # } 556s # 556s # 556s # inline static void 556s # org_project_callable_iface_method_marshal_simple_method ( 556s # GClosure *closure, 556s # GValue *return_value, 556s # unsigned int n_param_values, 556s # const GValue *param_values, 556s # void *invocation_hint, 556s # void *marshal_data) 556s # { 556s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 556s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 556s # } 556s # 556s # 556s # /** 556s # * OrgProjectCallableIface: 556s # * 556s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 556s # */ 556s # 556s # /** 556s # * OrgProjectCallableIfaceIface: 556s # * @parent_iface: The parent interface. 556s # * @handle_simple_method: Handler for the #OrgProjectCallableIface::handle-simple-method signal. 556s # * 556s # * Virtual table for the D-Bus interface org.project.CallableIface. 556s # */ 556s # 556s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 556s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 556s # 556s # static void 556s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 556s # { 556s # /* GObject signals for incoming D-Bus method calls: */ 556s # /** 556s # * OrgProjectCallableIface::handle-simple-method: 556s # * @object: A #OrgProjectCallableIface. 556s # * @invocation: A #GDBusMethodInvocation. 556s # * 556s # * Signal emitted when a remote caller is invoking the SimpleMethod() D-Bus method. 556s # * 556s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_callable_iface_complete_simple_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 556s # * 556s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 556s # */ 556s # g_signal_new ("handle-simple-method", 556s # G_TYPE_FROM_INTERFACE (iface), 556s # G_SIGNAL_RUN_LAST, 556s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_simple_method), 556s # g_signal_accumulator_true_handled, 556s # NULL, 556s # org_project_callable_iface_method_marshal_simple_method, 556s # G_TYPE_BOOLEAN, 556s # 1, 556s # G_TYPE_DBUS_METHOD_INVOCATION); 556s # 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_call_simple_method: 556s # * @proxy: A #OrgProjectCallableIfaceProxy. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Asynchronously invokes the SimpleMethod() D-Bus method on @proxy. 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call org_project_callable_iface_call_simple_method_finish() to get the result of the operation. 556s # * 556s # * See org_project_callable_iface_call_simple_method_sync() for the synchronous, blocking version of this method. 556s # */ 556s # void 556s # org_project_callable_iface_call_simple_method ( 556s # OrgProjectCallableIface *proxy, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 556s # "SimpleMethod", 556s # g_variant_new ("()"), 556s # G_DBUS_CALL_FLAGS_NONE, 556s # -1, 556s # cancellable, 556s # callback, 556s # user_data); 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_call_simple_method_finish: 556s # * @proxy: A #OrgProjectCallableIfaceProxy. 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_simple_method(). 556s # * @error: Return location for error or %NULL. 556s # * 556s # * Finishes an operation started with org_project_callable_iface_call_simple_method(). 556s # * 556s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 556s # */ 556s # gboolean 556s # org_project_callable_iface_call_simple_method_finish ( 556s # OrgProjectCallableIface *proxy, 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GVariant *_ret; 556s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 556s # if (_ret == NULL) 556s # goto _out; 556s # g_variant_get (_ret, 556s # "()"); 556s # g_variant_unref (_ret); 556s # _out: 556s # return _ret != NULL; 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_call_simple_method_sync: 556s # * @proxy: A #OrgProjectCallableIfaceProxy. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL. 556s # * 556s # * Synchronously invokes the SimpleMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 556s # * 556s # * See org_project_callable_iface_call_simple_method() for the asynchronous version of this method. 556s # * 556s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 556s # */ 556s # gboolean 556s # org_project_callable_iface_call_simple_method_sync ( 556s # OrgProjectCallableIface *proxy, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GVariant *_ret; 556s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 556s # "SimpleMethod", 556s # g_variant_new ("()"), 556s # G_DBUS_CALL_FLAGS_NONE, 556s # -1, 556s # cancellable, 556s # error); 556s # if (_ret == NULL) 556s # goto _out; 556s # g_variant_get (_ret, 556s # "()"); 556s # g_variant_unref (_ret); 556s # _out: 556s # return _ret != NULL; 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_complete_simple_method: 556s # * @object: A #OrgProjectCallableIface. 556s # * @invocation: (transfer full): A #GDBusMethodInvocation. 556s # * 556s # * Helper function used in service implementations to finish handling invocations of the SimpleMethod() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 556s # * 556s # * This method will free @invocation, you cannot use it afterwards. 556s # */ 556s # void 556s # org_project_callable_iface_complete_simple_method ( 556s # OrgProjectCallableIface *object G_GNUC_UNUSED, 556s # GDBusMethodInvocation *invocation) 556s # { 556s # g_dbus_method_invocation_return_value (invocation, 556s # g_variant_new ("()")); 556s # } 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * OrgProjectCallableIfaceProxy: 556s # * 556s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * OrgProjectCallableIfaceProxyClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for #OrgProjectCallableIfaceProxy. 556s # */ 556s # 556s # struct _OrgProjectCallableIfaceProxyPrivate 556s # { 556s # GData *qdata; 556s # }; 556s # 556s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 556s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 556s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 556s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 556s # 556s # #endif 556s # static void 556s # org_project_callable_iface_proxy_finalize (GObject *object) 556s # { 556s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 556s # g_datalist_clear (&proxy->priv->qdata); 556s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 556s # guint prop_id G_GNUC_UNUSED, 556s # GValue *value G_GNUC_UNUSED, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 556s # guint prop_id G_GNUC_UNUSED, 556s # const GValue *value G_GNUC_UNUSED, 556s # GParamSpec *pspec G_GNUC_UNUSED) 556s # { 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 556s # const gchar *sender_name G_GNUC_UNUSED, 556s # const gchar *signal_name, 556s # GVariant *parameters) 556s # { 556s # _ExtendedGDBusSignalInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # gsize n; 556s # guint signal_id; 556s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 556s # if (info == NULL) 556s # return; 556s # num_params = g_variant_n_children (parameters); 556s # paramv = g_new0 (GValue, num_params + 1); 556s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 556s # g_value_set_object (¶mv[0], proxy); 556s # g_variant_iter_init (&iter, parameters); 556s # n = 1; 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 556s # g_signal_emitv (paramv, signal_id, 0, NULL); 556s # for (n = 0; n < num_params + 1; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 556s # GVariant *changed_properties, 556s # const gchar *const *invalidated_properties) 556s # { 556s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 556s # guint n; 556s # const gchar *key; 556s # GVariantIter *iter; 556s # _ExtendedGDBusPropertyInfo *info; 556s # g_variant_get (changed_properties, "a{sv}", &iter); 556s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 556s # g_datalist_remove_data (&proxy->priv->qdata, key); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # g_variant_iter_free (iter); 556s # for (n = 0; invalidated_properties[n] != NULL; n++) 556s # { 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 556s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 556s # if (info != NULL) 556s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 556s # } 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 556s # { 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 556s # #else 556s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 556s # #endif 556s # 556s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 556s # { 556s # GObjectClass *gobject_class; 556s # GDBusProxyClass *proxy_class; 556s # 556s # gobject_class = G_OBJECT_CLASS (klass); 556s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 556s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 556s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 556s # 556s # proxy_class = G_DBUS_PROXY_CLASS (klass); 556s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 556s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 556s # 556s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 556s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 556s # #endif 556s # } 556s # 556s # static void 556s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 556s # { 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 556s # * 556s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # org_project_callable_iface_proxy_new ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 556s # * 556s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # OrgProjectCallableIface * 556s # org_project_callable_iface_proxy_new_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return ORG_PROJECT_CALLABLE_IFACE (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new_sync: 556s # * @connection: A #GDBusConnection. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # OrgProjectCallableIface * 556s # org_project_callable_iface_proxy_new_sync ( 556s # GDBusConnection *connection, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 556s # if (ret != NULL) 556s # return ORG_PROJECT_CALLABLE_IFACE (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new_for_bus: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 556s # * @user_data: User data to pass to @callback. 556s # * 556s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 556s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 556s # * 556s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 556s # */ 556s # void 556s # org_project_callable_iface_proxy_new_for_bus ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GAsyncReadyCallback callback, 556s # gpointer user_data) 556s # { 556s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new_for_bus_finish: 556s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 556s # * @error: Return location for error or %NULL 556s # * 556s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 556s # * 556s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # OrgProjectCallableIface * 556s # org_project_callable_iface_proxy_new_for_bus_finish ( 556s # GAsyncResult *res, 556s # GError **error) 556s # { 556s # GObject *ret; 556s # GObject *source_object; 556s # source_object = g_async_result_get_source_object (res); 556s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 556s # g_object_unref (source_object); 556s # if (ret != NULL) 556s # return ORG_PROJECT_CALLABLE_IFACE (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # /** 556s # * org_project_callable_iface_proxy_new_for_bus_sync: 556s # * @bus_type: A #GBusType. 556s # * @flags: Flags from the #GDBusProxyFlags enumeration. 556s # * @name: A bus name (well-known or unique). 556s # * @object_path: An object path. 556s # * @cancellable: (nullable): A #GCancellable or %NULL. 556s # * @error: Return location for error or %NULL 556s # * 556s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 556s # * 556s # * The calling thread is blocked until a reply is received. 556s # * 556s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 556s # * 556s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 556s # */ 556s # OrgProjectCallableIface * 556s # org_project_callable_iface_proxy_new_for_bus_sync ( 556s # GBusType bus_type, 556s # GDBusProxyFlags flags, 556s # const gchar *name, 556s # const gchar *object_path, 556s # GCancellable *cancellable, 556s # GError **error) 556s # { 556s # GInitable *ret; 556s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 556s # if (ret != NULL) 556s # return ORG_PROJECT_CALLABLE_IFACE (ret); 556s # else 556s # return NULL; 556s # } 556s # 556s # 556s # /* ------------------------------------------------------------------------ */ 556s # 556s # /** 556s # * OrgProjectCallableIfaceSkeleton: 556s # * 556s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 556s # */ 556s # 556s # /** 556s # * OrgProjectCallableIfaceSkeletonClass: 556s # * @parent_class: The parent class. 556s # * 556s # * Class structure for #OrgProjectCallableIfaceSkeleton. 556s # */ 556s # 556s # struct _OrgProjectCallableIfaceSkeletonPrivate 556s # { 556s # GValue *properties; 556s # GList *changed_properties; 556s # GSource *changed_properties_idle_source; 556s # GMainContext *context; 556s # GMutex lock; 556s # }; 556s # 556s # static void 556s # _org_project_callable_iface_skeleton_handle_method_call ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name, 556s # const gchar *method_name, 556s # GVariant *parameters, 556s # GDBusMethodInvocation *invocation, 556s # gpointer user_data) 556s # { 556s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 556s # _ExtendedGDBusMethodInfo *info; 556s # GVariantIter iter; 556s # GVariant *child; 556s # GValue *paramv; 556s # gsize num_params; 556s # guint num_extra; 556s # gsize n; 556s # guint signal_id; 556s # GValue return_value = G_VALUE_INIT; 556s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 556s # g_assert (info != NULL); 556s # num_params = g_variant_n_children (parameters); 556s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 556s # n = 0; 556s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 556s # g_value_set_object (¶mv[n++], skeleton); 556s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 556s # g_value_set_object (¶mv[n++], invocation); 556s # if (info->pass_fdlist) 556s # { 556s # #ifdef G_OS_UNIX 556s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 556s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 556s # #else 556s # g_assert_not_reached (); 556s # #endif 556s # } 556s # g_variant_iter_init (&iter, parameters); 556s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 556s # { 556s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 556s # if (arg_info->use_gvariant) 556s # { 556s # g_value_init (¶mv[n], G_TYPE_VARIANT); 556s # g_value_set_variant (¶mv[n], child); 556s # n++; 556s # } 556s # else 556s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 556s # g_variant_unref (child); 556s # } 556s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 556s # g_value_init (&return_value, G_TYPE_BOOLEAN); 556s # g_signal_emitv (paramv, signal_id, 0, &return_value); 556s # if (!g_value_get_boolean (&return_value)) 556s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 556s # g_value_unset (&return_value); 556s # for (n = 0; n < num_params + num_extra; n++) 556s # g_value_unset (¶mv[n]); 556s # g_free (paramv); 556s # } 556s # 556s # static GVariant * 556s # _org_project_callable_iface_skeleton_handle_get_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # GVariant *ret; 556s # ret = NULL; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # g_value_init (&value, pspec->value_type); 556s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 556s # g_value_unset (&value); 556s # } 556s # return ret; 556s # } 556s # 556s # static gboolean 556s # _org_project_callable_iface_skeleton_handle_set_property ( 556s # GDBusConnection *connection G_GNUC_UNUSED, 556s # const gchar *sender G_GNUC_UNUSED, 556s # const gchar *object_path G_GNUC_UNUSED, 556s # const gchar *interface_name G_GNUC_UNUSED, 556s # const gchar *property_name, 556s # GVariant *variant, 556s # GError **error, 556s # gpointer user_data) 556s # { 556s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 556s # GValue value = G_VALUE_INIT; 556s # GParamSpec *pspec; 556s # _ExtendedGDBusPropertyInfo *info; 556s # gboolean ret; 556s # ret = FALSE; 556s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 556s # g_assert (info != NULL); 556s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 556s # if (pspec == NULL) 556s # { 556s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 556s # } 556s # else 556s # { 556s # if (info->use_gvariant) 556s # g_value_set_variant (&value, variant); 556s # else 556s # g_dbus_gvariant_to_gvalue (variant, &value); 556s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 556s # g_value_unset (&value); 556s # ret = TRUE; 556s # } 556s # return ret; 556s # } 556s # 556s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 556s # { 556s # _org_project_callable_iface_skeleton_handle_method_call, 556s # _org_project_callable_iface_skeleton_handle_get_property, 556s # _org_project_callable_iface_skeleton_handle_set_property, 556s # {NULL} 556s # }; 556s # 556s # static GDBusInterfaceInfo * 556s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return org_project_callable_iface_interface_info (); 556s # } 556s # 556s # static GDBusInterfaceVTable * 556s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 556s # { 556s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 556s # } 556s # 556s # static GVariant * 556s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 556s # { 556s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 556s # 556s # GVariantBuilder builder; 556s # guint n; 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 556s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #else 556s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 556s # #endif 556s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 556s # goto out; 556s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 556s # { 556s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 556s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 556s # { 556s # GVariant *value; 556s # value = _org_project_callable_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.CallableIface", info->name, NULL, skeleton); 556s # if (value != NULL) 556s # { 556s # g_variant_take_ref (value); 556s # g_variant_builder_add (&builder, "{sv}", info->name, value); 556s # g_variant_unref (value); 556s # } 556s # } 556s # } 556s # out: 556s # return g_variant_builder_end (&builder); 556s # } 556s # 556s # static void 556s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 556s # { 556s # } 556s # 556s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 556s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 556s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 556s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 556s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 556s # 556s # #else 556s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_callable_iface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_callable_iface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectCallableIface * 557s # org_project_callable_iface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.OtherCallableIface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectOtherCallableIface 557s # * @title: OrgProjectOtherCallableIface 557s # * @short_description: Generated C code for the org.project.OtherCallableIface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.OtherCallableIface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.OtherCallableIface ---- */ 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_other_callable_iface_method_info_simple_method = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SimpleMethod", 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-simple-method", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_other_callable_iface_method_info_pointers[] = 557s # { 557s # &_org_project_other_callable_iface_method_info_simple_method.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_other_callable_iface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.OtherCallableIface", 557s # (GDBusMethodInfo **) &_org_project_other_callable_iface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-other-callable-iface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_other_callable_iface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.OtherCallableIface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_other_callable_iface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectOtherCallableIface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_other_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_other_callable_iface_method_marshal_simple_method ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectOtherCallableIface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.OtherCallableIface. 557s # */ 557s # 557s # /** 557s # * OrgProjectOtherCallableIfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_simple_method: Handler for the #OrgProjectOtherCallableIface::handle-simple-method signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.OtherCallableIface. 557s # */ 557s # 557s # typedef OrgProjectOtherCallableIfaceIface OrgProjectOtherCallableIfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectOtherCallableIface, org_project_other_callable_iface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_other_callable_iface_default_init (OrgProjectOtherCallableIfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectOtherCallableIface::handle-simple-method: 557s # * @object: A #OrgProjectOtherCallableIface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * 557s # * Signal emitted when a remote caller is invoking the SimpleMethod() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_other_callable_iface_complete_simple_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-simple-method", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectOtherCallableIfaceIface, handle_simple_method), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_other_callable_iface_method_marshal_simple_method, 557s # G_TYPE_BOOLEAN, 557s # 1, 557s # G_TYPE_DBUS_METHOD_INVOCATION); 557s # 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_call_simple_method: 557s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SimpleMethod() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_other_callable_iface_call_simple_method_finish() to get the result of the operation. 557s # * 557s # * See org_project_other_callable_iface_call_simple_method_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_other_callable_iface_call_simple_method ( 557s # OrgProjectOtherCallableIface *proxy, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SimpleMethod", 557s # g_variant_new ("()"), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_call_simple_method_finish: 557s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_call_simple_method(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_other_callable_iface_call_simple_method(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_other_callable_iface_call_simple_method_finish ( 557s # OrgProjectOtherCallableIface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_call_simple_method_sync: 557s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SimpleMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_other_callable_iface_call_simple_method() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_other_callable_iface_call_simple_method_sync ( 557s # OrgProjectOtherCallableIface *proxy, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SimpleMethod", 557s # g_variant_new ("()"), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_complete_simple_method: 557s # * @object: A #OrgProjectOtherCallableIface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SimpleMethod() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_other_callable_iface_complete_simple_method ( 557s # OrgProjectOtherCallableIface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectOtherCallableIfaceProxy: 557s # * 557s # * The #OrgProjectOtherCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectOtherCallableIfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectOtherCallableIfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectOtherCallableIfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_other_callable_iface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_other_callable_iface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_init (OrgProjectOtherCallableIfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_other_callable_iface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, OrgProjectOtherCallableIfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_callable_iface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_class_init (OrgProjectOtherCallableIfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_other_callable_iface_proxy_finalize; 557s # gobject_class->get_property = org_project_other_callable_iface_proxy_get_property; 557s # gobject_class->set_property = org_project_other_callable_iface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_other_callable_iface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_other_callable_iface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_other_callable_iface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_other_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_other_callable_iface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_other_callable_iface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectOtherCallableIface * 557s # org_project_other_callable_iface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_other_callable_iface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectOtherCallableIface * 557s # org_project_other_callable_iface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_other_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_other_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_other_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_other_callable_iface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_other_callable_iface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectOtherCallableIface * 557s # org_project_other_callable_iface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_other_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_other_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectOtherCallableIface * 557s # org_project_other_callable_iface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectOtherCallableIfaceSkeleton: 557s # * 557s # * The #OrgProjectOtherCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectOtherCallableIfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectOtherCallableIfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectOtherCallableIfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_other_callable_iface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_other_callable_iface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_other_callable_iface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_other_callable_iface_skeleton_vtable = 557s # { 557s # _org_project_other_callable_iface_skeleton_handle_method_call, 557s # _org_project_other_callable_iface_skeleton_handle_get_property, 557s # _org_project_other_callable_iface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_other_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_other_callable_iface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_other_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_other_callable_iface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_other_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_other_callable_iface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_other_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_other_callable_iface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_other_callable_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherCallableIface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_other_callable_iface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_other_callable_iface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_skeleton_init (OrgProjectOtherCallableIfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_other_callable_iface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, OrgProjectOtherCallableIfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_skeleton_class_init (OrgProjectOtherCallableIfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_other_callable_iface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_other_callable_iface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_other_callable_iface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_other_callable_iface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_other_callable_iface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_other_callable_iface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.OtherCallableIface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectOtherCallableIface * 557s # org_project_other_callable_iface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s ok 10 __main__.TestCodegen.test_generate_methods_marshaller_single_typed_in_args 557s # gdbus-codegen: /usr/bin/gdbus-codegen 557s # tmpdir: /tmp/tmpubvmzfnp 557s # /tmp/tmpubvmzfnp/tmpyl8i84s1.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpyl8i84s1.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBooleanFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # gboolean arg_arg_b, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectBooleanFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectBooleanFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_boolean (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_arg_b = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_b", 557s # (gchar *) "b", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_arg_b.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_b = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodB", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-b", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_b.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_b ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_b: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-b signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-b: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_b: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodB() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_b() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-b", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_b), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_b, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_b: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_b: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodB() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_b_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_b_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_b ( 557s # OrgProjectUsefulInterface *proxy, 557s # gboolean arg_arg_b, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodB", 557s # g_variant_new ("(b)", 557s # arg_arg_b), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_b_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_b(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_b(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_b_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_b_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_b: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodB() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_b() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_b_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # gboolean arg_arg_b, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodB", 557s # g_variant_new ("(b)", 557s # arg_arg_b), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_b: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodB() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_b ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp4jmj_ltb.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp4jmj_ltb.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UCHAR ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUcharFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # guchar arg_arg_y, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectUcharFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectUcharFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_uchar (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_arg_y = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_y", 557s # (gchar *) "y", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_arg_y.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_y = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodY", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-y", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_y.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_y ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UCHAR (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_y: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-y signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-y: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_y: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodY() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_y() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-y", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_y), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_y, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UCHAR); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_y: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_y: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodY() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_y_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_y_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_y ( 557s # OrgProjectUsefulInterface *proxy, 557s # guchar arg_arg_y, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodY", 557s # g_variant_new ("(y)", 557s # arg_arg_y), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_y_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_y(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_y(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_y_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_y_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_y: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodY() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_y() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_y_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # guchar arg_arg_y, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodY", 557s # g_variant_new ("(y)", 557s # arg_arg_y), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_y: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodY() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_y ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpp5c839_v.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpp5c839_v.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectIntFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # gint16 arg_arg_n, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectIntFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectIntFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_int (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_arg_n = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_n", 557s # (gchar *) "n", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_arg_n.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_n = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodN", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-n", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_n.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_n ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_n: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-n signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-n: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_n: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodN() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_n() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-n", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_n), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_n, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_n: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_n: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodN() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_n_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_n_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_n ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint16 arg_arg_n, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodN", 557s # g_variant_new ("(n)", 557s # arg_arg_n), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_n_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_n(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_n(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_n_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_n_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_n: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodN() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_n() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_n_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint16 arg_arg_n, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodN", 557s # g_variant_new ("(n)", 557s # arg_arg_n), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_n: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodN() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_n ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmppshuwdjl.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmppshuwdjl.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUintFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # guint16 arg_arg_q, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectUintFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectUintFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_uint (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_arg_q = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_q", 557s # (gchar *) "q", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_arg_q.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_q = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodQ", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-q", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_q.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_q ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_q: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-q signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-q: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_q: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodQ() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_q() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-q", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_q), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_q, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_q: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_q: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_q_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_q_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_q ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint16 arg_arg_q, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodQ", 557s # g_variant_new ("(q)", 557s # arg_arg_q), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_q_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_q(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_q(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_q_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_q_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_q: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_q() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_q_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint16 arg_arg_q, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodQ", 557s # g_variant_new ("(q)", 557s # arg_arg_q), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_q: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodQ() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_q ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpf1hotp9o.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpf1hotp9o.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectIntFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # gint arg_arg_i, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectIntFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectIntFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_int (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_arg_i = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_i", 557s # (gchar *) "i", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_arg_i.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_i = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodI", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-i", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_i.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_i ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_i: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-i signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-i: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_i: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodI() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_i() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-i", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_i), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_i, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_i: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_i: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodI() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_i_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_i_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_i ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint arg_arg_i, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodI", 557s # g_variant_new ("(i)", 557s # arg_arg_i), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_i_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_i(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_i(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_i_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_i_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_i: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodI() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_i() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_i_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint arg_arg_i, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodI", 557s # g_variant_new ("(i)", 557s # arg_arg_i), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_i: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodI() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_i ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpua1ev6u6.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpua1ev6u6.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUintFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # guint arg_arg_u, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectUintFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectUintFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_uint (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_arg_u = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_u", 557s # (gchar *) "u", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_arg_u.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_u = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodU", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-u", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_u.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_u ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_u: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-u signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-u: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_u: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodU() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_u() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-u", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_u), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_u, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_u: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_u: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodU() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_u_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_u_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_u ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint arg_arg_u, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodU", 557s # g_variant_new ("(u)", 557s # arg_arg_u), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_u_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_u(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_u(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_u_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_u_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_u: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodU() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_u() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_u_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint arg_arg_u, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodU", 557s # g_variant_new ("(u)", 557s # arg_arg_u), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_u: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodU() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_u ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpn2qjlm8a.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpn2qjlm8a.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT64 ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectInt64Func) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # gint64 arg_arg_x, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectInt64Func callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectInt64Func) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_int64 (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_arg_x = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_x", 557s # (gchar *) "x", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_arg_x.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_x = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodX", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-x", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_x.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_x ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT64 (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_x: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-x signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-x: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_x: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodX() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_x() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-x", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_x), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_x, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT64); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_x: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_x: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodX() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_x_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_x_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_x ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint64 arg_arg_x, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodX", 557s # g_variant_new ("(x)", 557s # arg_arg_x), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_x_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_x(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_x(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_x_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_x_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_x: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodX() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_x() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_x_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # gint64 arg_arg_x, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodX", 557s # g_variant_new ("(x)", 557s # arg_arg_x), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_x: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodX() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_x ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp0_swcs7s.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp0_swcs7s.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT64 ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUint64Func) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # guint64 arg_arg_t, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectUint64Func callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectUint64Func) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_uint64 (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_arg_t = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_t", 557s # (gchar *) "t", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_arg_t.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_t = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodT", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-t", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_t.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_t ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT64 (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_t: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-t signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-t: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_t: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodT() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_t() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-t", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_t), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_t, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT64); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_t: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_t: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodT() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_t_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_t_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_t ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint64 arg_arg_t, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodT", 557s # g_variant_new ("(t)", 557s # arg_arg_t), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_t_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_t(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_t(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_t_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_t_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_t: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodT() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_t() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_t_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # guint64 arg_arg_t, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodT", 557s # g_variant_new ("(t)", 557s # arg_arg_t), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_t: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodT() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_t ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp5omex_lw.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp5omex_lw.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_DOUBLE ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectDoubleFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # gdouble arg_arg_d, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectDoubleFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectDoubleFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_double (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_arg_d = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_d", 557s # (gchar *) "d", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_arg_d.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_d = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodD", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-d", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_d.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_d ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_DOUBLE (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_d: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-d signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-d: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_d: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodD() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_d() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-d", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_d), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_d, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_DOUBLE); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_d: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_d: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodD() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_d_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_d_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_d ( 557s # OrgProjectUsefulInterface *proxy, 557s # gdouble arg_arg_d, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodD", 557s # g_variant_new ("(d)", 557s # arg_arg_d), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_d_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_d(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_d(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_d_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_d_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_d: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_d() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_d_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # gdouble arg_arg_d, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodD", 557s # g_variant_new ("(d)", 557s # arg_arg_d), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_d: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodD() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_d ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp3l6qhasu.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp3l6qhasu.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # const gchar *arg_arg_s, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_string (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_arg_s = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_s", 557s # (gchar *) "s", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_arg_s.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_s = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodS", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-s", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_s.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_s ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_s: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-s signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-s: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_s: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodS() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_s() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-s", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_s), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_s, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_s: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_s: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodS() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_s_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_s_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_s ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_s, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodS", 557s # g_variant_new ("(s)", 557s # arg_arg_s), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_s_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_s(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_s(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_s_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_s_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_s: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodS() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_s() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_s_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_s, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodS", 557s # g_variant_new ("(s)", 557s # arg_arg_s), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_s: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodS() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_s ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpufqph4ov.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpufqph4ov.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # const gchar *arg_arg_o, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_string (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_arg_o = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_o", 557s # (gchar *) "o", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_arg_o.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_o = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodO", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-o", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_o.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_o ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_o: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-o signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-o: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_o: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodO() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_o() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-o", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_o), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_o, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_o: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_o: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodO() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_o_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_o_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_o ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_o, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodO", 557s # g_variant_new ("(o)", 557s # arg_arg_o), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_o_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_o(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_o(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_o_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_o_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_o: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodO() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_o() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_o_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_o, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodO", 557s # g_variant_new ("(o)", 557s # arg_arg_o), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_o: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodO() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_o ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpmiape6k4.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpmiape6k4.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # const gchar *arg_arg_g, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_string (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_arg_g = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_g", 557s # (gchar *) "g", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_arg_g.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_g = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodG", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-g", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_g.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_g ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_g: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-g signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-g: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_g: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodG() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_g() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-g", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_g), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_g, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_g: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_g: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodG() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_g_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_g_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_g ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_g, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodG", 557s # g_variant_new ("(g)", 557s # arg_arg_g), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_g_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_g(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_g(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_g_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_g_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_g: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodG() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_g() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_g_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_g, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodG", 557s # g_variant_new ("(g)", 557s # arg_arg_g), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_g: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodG() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_g ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp_l8j8vy8.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp_l8j8vy8.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # GVariant *arg_arg_h, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectVariantFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_variant (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_arg_h = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_h", 557s # (gchar *) "h", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_arg_h.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_h = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodH", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-h", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_h.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_h ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_h: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-h signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-h: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_h: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodH() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_h() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-h", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_h), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_h, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_h: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_h: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodH() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_h_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_h_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_h ( 557s # OrgProjectUsefulInterface *proxy, 557s # GVariant *arg_arg_h, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodH", 557s # g_variant_new ("(@h)", 557s # arg_arg_h), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_h_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_h(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_h(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_h_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_h_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_h: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodH() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_h() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_h_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # GVariant *arg_arg_h, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodH", 557s # g_variant_new ("(@h)", 557s # arg_arg_h), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_h: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodH() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_h ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmp4n5gfd6w.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmp4n5gfd6w.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # const gchar *arg_arg_ay, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_string (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_arg_ay = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_ay", 557s # (gchar *) "ay", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_arg_ay.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ay = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodAy", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-ay", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_ay.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_ay ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_ay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ay signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-ay: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_ay: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodAy() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_ay() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-ay", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ay), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_ay, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_ay: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_ay: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_ay_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_ay_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_ay ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_ay, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodAy", 557s # g_variant_new ("(^ay)", 557s # arg_arg_ay), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_ay_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ay(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ay(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_ay_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_ay_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_ay: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_ay() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_ay_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *arg_arg_ay, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodAy", 557s # g_variant_new ("(^ay)", 557s # arg_arg_ay), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_ay: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAy() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_ay ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmpzkmovbg0.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpzkmovbg0.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 557s # case G_TYPE_UCHAR: 557s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 557s # break; 557s # case G_TYPE_INT: 557s # ret = (g_value_get_int (a) == g_value_get_int (b)); 557s # break; 557s # case G_TYPE_UINT: 557s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 557s # break; 557s # case G_TYPE_INT64: 557s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 557s # break; 557s # case G_TYPE_UINT64: 557s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 557s # break; 557s # case G_TYPE_DOUBLE: 557s # { 557s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 557s # gdouble da = g_value_get_double (a); 557s # gdouble db = g_value_get_double (b); 557s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 557s # } 557s # break; 557s # case G_TYPE_STRING: 557s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 557s # break; 557s # case G_TYPE_VARIANT: 557s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 557s # break; 557s # default: 557s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 557s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 557s # else 557s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 557s # break; 557s # } 557s # return ret; 557s # } 557s # 557s # static void 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint G_GNUC_UNUSED, 557s # void *marshal_data) 557s # { 557s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 557s # (void *data1, 557s # GDBusMethodInvocation *arg_method_invocation, 557s # const gchar *const *arg_arg_as, 557s # void *data2); 557s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 557s # GCClosure *cc = (GCClosure*) closure; 557s # void *data1, *data2; 557s # gboolean v_return; 557s # 557s # g_return_if_fail (return_value != NULL); 557s # g_return_if_fail (n_param_values == 3); 557s # 557s # if (G_CCLOSURE_SWAP_DATA (closure)) 557s # { 557s # data1 = closure->data; 557s # data2 = g_value_peek_pointer (param_values + 0); 557s # } 557s # else 557s # { 557s # data1 = g_value_peek_pointer (param_values + 0); 557s # data2 = closure->data; 557s # } 557s # 557s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 557s # (marshal_data ? marshal_data : cc->callback); 557s # 557s # v_return = 557s # callback (data1, 557s # g_marshal_value_peek_object (param_values + 1), 557s # g_marshal_value_peek_boxed (param_values + 2), 557s # data2); 557s # 557s # g_value_set_boolean (return_value, v_return); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ 557s # * Code for interface org.project.UsefulInterface 557s # * ------------------------------------------------------------------------ 557s # */ 557s # 557s # /** 557s # * SECTION:OrgProjectUsefulInterface 557s # * @title: OrgProjectUsefulInterface 557s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 557s # * 557s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 557s # */ 557s # 557s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 557s # 557s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_arg_as = 557s # { 557s # { 557s # -1, 557s # (gchar *) "arg_as", 557s # (gchar *) "as", 557s # NULL 557s # }, 557s # FALSE 557s # }; 557s # 557s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_arg_as.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_as = 557s # { 557s # { 557s # -1, 557s # (gchar *) "SingleArgMethodAs", 557s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_pointers, 557s # NULL, 557s # NULL 557s # }, 557s # "handle-single-arg-method-as", 557s # FALSE 557s # }; 557s # 557s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 557s # { 557s # &_org_project_useful_interface_method_info_single_arg_method_as.parent_struct, 557s # NULL 557s # }; 557s # 557s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 557s # { 557s # { 557s # -1, 557s # (gchar *) "org.project.UsefulInterface", 557s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 557s # NULL, 557s # NULL, 557s # NULL 557s # }, 557s # "org-project-useful-interface", 557s # }; 557s # 557s # 557s # /** 557s # * org_project_useful_interface_interface_info: 557s # * 557s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 557s # * 557s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 557s # */ 557s # GDBusInterfaceInfo * 557s # org_project_useful_interface_interface_info (void) 557s # { 557s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_override_properties: 557s # * @klass: The class structure for a #GObject derived class. 557s # * @property_id_begin: The property id to assign to the first overridden property. 557s # * 557s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 557s # * The properties are overridden in the order they are defined. 557s # * 557s # * Returns: The last property id. 557s # */ 557s # guint 557s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 557s # { 557s # return property_id_begin - 1; 557s # } 557s # 557s # 557s # inline static void 557s # org_project_useful_interface_method_marshal_single_arg_method_as ( 557s # GClosure *closure, 557s # GValue *return_value, 557s # unsigned int n_param_values, 557s # const GValue *param_values, 557s # void *invocation_hint, 557s # void *marshal_data) 557s # { 557s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 557s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 557s # } 557s # 557s # 557s # /** 557s # * OrgProjectUsefulInterface: 557s # * 557s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceIface: 557s # * @parent_iface: The parent interface. 557s # * @handle_single_arg_method_as: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-as signal. 557s # * 557s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 557s # */ 557s # 557s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 557s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 557s # 557s # static void 557s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 557s # { 557s # /* GObject signals for incoming D-Bus method calls: */ 557s # /** 557s # * OrgProjectUsefulInterface::handle-single-arg-method-as: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: A #GDBusMethodInvocation. 557s # * @arg_arg_as: Argument passed by remote caller. 557s # * 557s # * Signal emitted when a remote caller is invoking the SingleArgMethodAs() D-Bus method. 557s # * 557s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_as() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 557s # * 557s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 557s # */ 557s # g_signal_new ("handle-single-arg-method-as", 557s # G_TYPE_FROM_INTERFACE (iface), 557s # G_SIGNAL_RUN_LAST, 557s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_as), 557s # g_signal_accumulator_true_handled, 557s # NULL, 557s # org_project_useful_interface_method_marshal_single_arg_method_as, 557s # G_TYPE_BOOLEAN, 557s # 2, 557s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 557s # 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_as: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_as: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_call_single_arg_method_as_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_as_sync() for the synchronous, blocking version of this method. 557s # */ 557s # void 557s # org_project_useful_interface_call_single_arg_method_as ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *const *arg_arg_as, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodAs", 557s # g_variant_new ("(^as)", 557s # arg_arg_as), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # callback, 557s # user_data); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_as_finish: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_as(). 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_as(). 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_as_finish ( 557s # OrgProjectUsefulInterface *proxy, 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_call_single_arg_method_as_sync: 557s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 557s # * @arg_arg_as: Argument to pass with the method invocation. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL. 557s # * 557s # * Synchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_call_single_arg_method_as() for the asynchronous version of this method. 557s # * 557s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 557s # */ 557s # gboolean 557s # org_project_useful_interface_call_single_arg_method_as_sync ( 557s # OrgProjectUsefulInterface *proxy, 557s # const gchar *const *arg_arg_as, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GVariant *_ret; 557s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 557s # "SingleArgMethodAs", 557s # g_variant_new ("(^as)", 557s # arg_arg_as), 557s # G_DBUS_CALL_FLAGS_NONE, 557s # -1, 557s # cancellable, 557s # error); 557s # if (_ret == NULL) 557s # goto _out; 557s # g_variant_get (_ret, 557s # "()"); 557s # g_variant_unref (_ret); 557s # _out: 557s # return _ret != NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_complete_single_arg_method_as: 557s # * @object: A #OrgProjectUsefulInterface. 557s # * @invocation: (transfer full): A #GDBusMethodInvocation. 557s # * 557s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 557s # * 557s # * This method will free @invocation, you cannot use it afterwards. 557s # */ 557s # void 557s # org_project_useful_interface_complete_single_arg_method_as ( 557s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 557s # GDBusMethodInvocation *invocation) 557s # { 557s # g_dbus_method_invocation_return_value (invocation, 557s # g_variant_new ("()")); 557s # } 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxy: 557s # * 557s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceProxyClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceProxy. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceProxyPrivate 557s # { 557s # GData *qdata; 557s # }; 557s # 557s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_proxy_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 557s # g_datalist_clear (&proxy->priv->qdata); 557s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 557s # guint prop_id G_GNUC_UNUSED, 557s # const GValue *value G_GNUC_UNUSED, 557s # GParamSpec *pspec G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 557s # const gchar *sender_name G_GNUC_UNUSED, 557s # const gchar *signal_name, 557s # GVariant *parameters) 557s # { 557s # _ExtendedGDBusSignalInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # gsize n; 557s # guint signal_id; 557s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 557s # if (info == NULL) 557s # return; 557s # num_params = g_variant_n_children (parameters); 557s # paramv = g_new0 (GValue, num_params + 1); 557s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[0], proxy); 557s # g_variant_iter_init (&iter, parameters); 557s # n = 1; 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_signal_emitv (paramv, signal_id, 0, NULL); 557s # for (n = 0; n < num_params + 1; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 557s # GVariant *changed_properties, 557s # const gchar *const *invalidated_properties) 557s # { 557s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 557s # guint n; 557s # const gchar *key; 557s # GVariantIter *iter; 557s # _ExtendedGDBusPropertyInfo *info; 557s # g_variant_get (changed_properties, "a{sv}", &iter); 557s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 557s # g_datalist_remove_data (&proxy->priv->qdata, key); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # g_variant_iter_free (iter); 557s # for (n = 0; invalidated_properties[n] != NULL; n++) 557s # { 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 557s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 557s # if (info != NULL) 557s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 557s # } 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 557s # #else 557s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 557s # #endif 557s # 557s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusProxyClass *proxy_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 557s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 557s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 557s # 557s # proxy_class = G_DBUS_PROXY_CLASS (klass); 557s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 557s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_sync: 557s # * @connection: A #GDBusConnection. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_sync ( 557s # GDBusConnection *connection, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 557s # * @user_data: User data to pass to @callback. 557s # * 557s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 557s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 557s # */ 557s # void 557s # org_project_useful_interface_proxy_new_for_bus ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GAsyncReadyCallback callback, 557s # gpointer user_data) 557s # { 557s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_finish: 557s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 557s # * @error: Return location for error or %NULL 557s # * 557s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_finish ( 557s # GAsyncResult *res, 557s # GError **error) 557s # { 557s # GObject *ret; 557s # GObject *source_object; 557s # source_object = g_async_result_get_source_object (res); 557s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 557s # g_object_unref (source_object); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_proxy_new_for_bus_sync: 557s # * @bus_type: A #GBusType. 557s # * @flags: Flags from the #GDBusProxyFlags enumeration. 557s # * @name: A bus name (well-known or unique). 557s # * @object_path: An object path. 557s # * @cancellable: (nullable): A #GCancellable or %NULL. 557s # * @error: Return location for error or %NULL 557s # * 557s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 557s # * 557s # * The calling thread is blocked until a reply is received. 557s # * 557s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_proxy_new_for_bus_sync ( 557s # GBusType bus_type, 557s # GDBusProxyFlags flags, 557s # const gchar *name, 557s # const gchar *object_path, 557s # GCancellable *cancellable, 557s # GError **error) 557s # { 557s # GInitable *ret; 557s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 557s # if (ret != NULL) 557s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 557s # else 557s # return NULL; 557s # } 557s # 557s # 557s # /* ------------------------------------------------------------------------ */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeleton: 557s # * 557s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 557s # */ 557s # 557s # /** 557s # * OrgProjectUsefulInterfaceSkeletonClass: 557s # * @parent_class: The parent class. 557s # * 557s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 557s # */ 557s # 557s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 557s # { 557s # GValue *properties; 557s # GList *changed_properties; 557s # GSource *changed_properties_idle_source; 557s # GMainContext *context; 557s # GMutex lock; 557s # }; 557s # 557s # static void 557s # _org_project_useful_interface_skeleton_handle_method_call ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name, 557s # const gchar *method_name, 557s # GVariant *parameters, 557s # GDBusMethodInvocation *invocation, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # _ExtendedGDBusMethodInfo *info; 557s # GVariantIter iter; 557s # GVariant *child; 557s # GValue *paramv; 557s # gsize num_params; 557s # guint num_extra; 557s # gsize n; 557s # guint signal_id; 557s # GValue return_value = G_VALUE_INIT; 557s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 557s # g_assert (info != NULL); 557s # num_params = g_variant_n_children (parameters); 557s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 557s # n = 0; 557s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_set_object (¶mv[n++], skeleton); 557s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 557s # g_value_set_object (¶mv[n++], invocation); 557s # if (info->pass_fdlist) 557s # { 557s # #ifdef G_OS_UNIX 557s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 557s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 557s # #else 557s # g_assert_not_reached (); 557s # #endif 557s # } 557s # g_variant_iter_init (&iter, parameters); 557s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 557s # { 557s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 557s # if (arg_info->use_gvariant) 557s # { 557s # g_value_init (¶mv[n], G_TYPE_VARIANT); 557s # g_value_set_variant (¶mv[n], child); 557s # n++; 557s # } 557s # else 557s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 557s # g_variant_unref (child); 557s # } 557s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 557s # g_value_init (&return_value, G_TYPE_BOOLEAN); 557s # g_signal_emitv (paramv, signal_id, 0, &return_value); 557s # if (!g_value_get_boolean (&return_value)) 557s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 557s # g_value_unset (&return_value); 557s # for (n = 0; n < num_params + num_extra; n++) 557s # g_value_unset (¶mv[n]); 557s # g_free (paramv); 557s # } 557s # 557s # static GVariant * 557s # _org_project_useful_interface_skeleton_handle_get_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # GVariant *ret; 557s # ret = NULL; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # g_value_init (&value, pspec->value_type); 557s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 557s # g_value_unset (&value); 557s # } 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _org_project_useful_interface_skeleton_handle_set_property ( 557s # GDBusConnection *connection G_GNUC_UNUSED, 557s # const gchar *sender G_GNUC_UNUSED, 557s # const gchar *object_path G_GNUC_UNUSED, 557s # const gchar *interface_name G_GNUC_UNUSED, 557s # const gchar *property_name, 557s # GVariant *variant, 557s # GError **error, 557s # gpointer user_data) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 557s # GValue value = G_VALUE_INIT; 557s # GParamSpec *pspec; 557s # _ExtendedGDBusPropertyInfo *info; 557s # gboolean ret; 557s # ret = FALSE; 557s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 557s # g_assert (info != NULL); 557s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 557s # if (pspec == NULL) 557s # { 557s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 557s # } 557s # else 557s # { 557s # if (info->use_gvariant) 557s # g_value_set_variant (&value, variant); 557s # else 557s # g_dbus_gvariant_to_gvalue (variant, &value); 557s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 557s # g_value_unset (&value); 557s # ret = TRUE; 557s # } 557s # return ret; 557s # } 557s # 557s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 557s # { 557s # _org_project_useful_interface_skeleton_handle_method_call, 557s # _org_project_useful_interface_skeleton_handle_get_property, 557s # _org_project_useful_interface_skeleton_handle_set_property, 557s # {NULL} 557s # }; 557s # 557s # static GDBusInterfaceInfo * 557s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return org_project_useful_interface_interface_info (); 557s # } 557s # 557s # static GDBusInterfaceVTable * 557s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 557s # { 557s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 557s # } 557s # 557s # static GVariant * 557s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 557s # 557s # GVariantBuilder builder; 557s # guint n; 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 557s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #else 557s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 557s # #endif 557s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 557s # goto out; 557s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 557s # { 557s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 557s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 557s # { 557s # GVariant *value; 557s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 557s # if (value != NULL) 557s # { 557s # g_variant_take_ref (value); 557s # g_variant_builder_add (&builder, "{sv}", info->name, value); 557s # g_variant_unref (value); 557s # } 557s # } 557s # } 557s # out: 557s # return g_variant_builder_end (&builder); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #else 557s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 557s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 557s # 557s # #endif 557s # static void 557s # org_project_useful_interface_skeleton_finalize (GObject *object) 557s # { 557s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 557s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 557s # if (skeleton->priv->changed_properties_idle_source != NULL) 557s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 557s # g_main_context_unref (skeleton->priv->context); 557s # g_mutex_clear (&skeleton->priv->lock); 557s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 557s # { 557s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 557s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 557s # #else 557s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 557s # #endif 557s # 557s # g_mutex_init (&skeleton->priv->lock); 557s # skeleton->priv->context = g_main_context_ref_thread_default (); 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 557s # { 557s # GObjectClass *gobject_class; 557s # GDBusInterfaceSkeletonClass *skeleton_class; 557s # 557s # gobject_class = G_OBJECT_CLASS (klass); 557s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 557s # 557s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 557s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 557s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 557s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 557s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 557s # 557s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 557s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 557s # #endif 557s # } 557s # 557s # static void 557s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 557s # { 557s # } 557s # 557s # /** 557s # * org_project_useful_interface_skeleton_new: 557s # * 557s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 557s # * 557s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 557s # */ 557s # OrgProjectUsefulInterface * 557s # org_project_useful_interface_skeleton_new (void) 557s # { 557s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 557s # } 557s # Error: 557s # 557s # /tmp/tmpubvmzfnp/tmptrm82_bo.xml: 557s # 557s # 557s # 557s # 557s # 557s # 557s # 557s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmptrm82_bo.xml', '--output', '-', '--body'] 557s # Return code: 0 557s # Output: 557s # /* 557s # * This file is generated by gdbus-codegen, do not modify it. 557s # * 557s # * The license of this code is the same as for the D-Bus interface description 557s # * it was derived from. Note that it links to GLib, so must comply with the 557s # * LGPL linking clauses. 557s # */ 557s # 557s # #ifdef HAVE_CONFIG_H 557s # # include "config.h" 557s # #endif 557s # 557s # #include 557s # #ifdef G_OS_UNIX 557s # # include 557s # #endif 557s # 557s # #ifdef G_ENABLE_DEBUG 557s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 557s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 557s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 557s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 557s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 557s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 557s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 557s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 557s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 557s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 557s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 557s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 557s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 557s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 557s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 557s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 557s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 557s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 557s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 557s # #else /* !G_ENABLE_DEBUG */ 557s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 557s # * Do not access GValues directly in your code. Instead, use the 557s # * g_value_get_*() functions 557s # */ 557s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 557s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 557s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 557s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 557s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 557s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 557s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 557s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 557s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 557s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 557s # #endif /* !G_ENABLE_DEBUG */ 557s # 557s # typedef struct 557s # { 557s # GDBusArgInfo parent_struct; 557s # gboolean use_gvariant; 557s # } _ExtendedGDBusArgInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusMethodInfo parent_struct; 557s # const gchar *signal_name; 557s # gboolean pass_fdlist; 557s # } _ExtendedGDBusMethodInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusSignalInfo parent_struct; 557s # const gchar *signal_name; 557s # } _ExtendedGDBusSignalInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusPropertyInfo parent_struct; 557s # const gchar *hyphen_name; 557s # guint use_gvariant : 1; 557s # guint emits_changed_signal : 1; 557s # } _ExtendedGDBusPropertyInfo; 557s # 557s # typedef struct 557s # { 557s # GDBusInterfaceInfo parent_struct; 557s # const gchar *hyphen_name; 557s # } _ExtendedGDBusInterfaceInfo; 557s # 557s # typedef struct 557s # { 557s # const _ExtendedGDBusPropertyInfo *info; 557s # guint prop_id; 557s # GValue orig_value; /* the value before the change */ 557s # } ChangedProperty; 557s # 557s # static void 557s # _changed_property_free (ChangedProperty *data) 557s # { 557s # g_value_unset (&data->orig_value); 557s # g_free (data); 557s # } 557s # 557s # static gboolean 557s # _g_strv_equal0 (gchar **a, gchar **b) 557s # { 557s # gboolean ret = FALSE; 557s # guint n; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # if (g_strv_length (a) != g_strv_length (b)) 557s # goto out; 557s # for (n = 0; a[n] != NULL; n++) 557s # if (g_strcmp0 (a[n], b[n]) != 0) 557s # goto out; 557s # ret = TRUE; 557s # out: 557s # return ret; 557s # } 557s # 557s # static gboolean 557s # _g_variant_equal0 (GVariant *a, GVariant *b) 557s # { 557s # gboolean ret = FALSE; 557s # if (a == NULL && b == NULL) 557s # { 557s # ret = TRUE; 557s # goto out; 557s # } 557s # if (a == NULL || b == NULL) 557s # goto out; 557s # ret = g_variant_equal (a, b); 557s # out: 557s # return ret; 557s # } 557s # 557s # G_GNUC_UNUSED static gboolean 557s # _g_value_equal (const GValue *a, const GValue *b) 557s # { 557s # gboolean ret = FALSE; 557s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 557s # switch (G_VALUE_TYPE (a)) 557s # { 557s # case G_TYPE_BOOLEAN: 557s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 557s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # const gchar *const *arg_arg_ao, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 3); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # g_marshal_value_peek_boxed (param_values + 2), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_arg_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_arg_ao.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAo", 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-single-arg-method-ao", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ao.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_ao ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_ao: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ao signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-ao: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_arg_ao: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAo() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_ao() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-ao", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ao), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_ao, 558s # G_TYPE_BOOLEAN, 558s # 2, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_ao: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_ao_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ao_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_ao ( 558s # OrgProjectUsefulInterface *proxy, 558s # const gchar *const *arg_arg_ao, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAo", 558s # g_variant_new ("(^ao)", 558s # arg_arg_ao), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ao(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ao(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ao_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_ao: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ao() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ao_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # const gchar *const *arg_arg_ao, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAo", 558s # g_variant_new ("(^ao)", 558s # arg_arg_ao), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_ao: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAo() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_ao ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmpubvmzfnp/tmpv98ac4a4.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpv98ac4a4.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # const gchar *const *arg_arg_aay, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 3); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # g_marshal_value_peek_boxed (param_values + 2), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_arg_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_arg_aay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAay", 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-single-arg-method-aay", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_aay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_aay ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_aay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-aay signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-aay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_arg_aay: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAay() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_aay() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-aay", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_aay), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_aay, 558s # G_TYPE_BOOLEAN, 558s # 2, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_aay: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_aay_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_aay_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_aay ( 558s # OrgProjectUsefulInterface *proxy, 558s # const gchar *const *arg_arg_aay, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAay", 558s # g_variant_new ("(^aay)", 558s # arg_arg_aay), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_aay(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_aay(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_aay_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_aay: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_aay() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_aay_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # const gchar *const *arg_arg_aay, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAay", 558s # g_variant_new ("(^aay)", 558s # arg_arg_aay), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_aay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAay() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_aay ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmpubvmzfnp/tmpzn42zlw0.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpubvmzfnp/tmpzn42zlw0.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # GVariant *arg_arg_asv, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectVariantFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 3); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # g_marshal_value_peek_variant (param_values + 2), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_arg_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_arg_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAsv", 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-single-arg-method-asv", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_asv ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_asv: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-asv signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-asv: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_arg_asv: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAsv() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_asv() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-asv", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_asv), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_asv, 558s # G_TYPE_BOOLEAN, 558s # 2, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_asv_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_asv_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_asv ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant *arg_arg_asv, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAsv", 558s # g_variant_new ("(@a{sv})", 558s # arg_arg_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_asv(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_asv(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_asv_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @arg_arg_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_asv() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_asv_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant *arg_arg_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAsv", 558s # g_variant_new ("(@a{sv})", 558s # arg_arg_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_asv: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAsv() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_asv ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 11 __main__.TestCodegen.test_generate_methods_marshaller_single_typed_out_args 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmp_bbbmrec 558s # /tmp/tmp_bbbmrec/tmp2jomljlv.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmp2jomljlv.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_arg_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_arg_b.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodB", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-b", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_b.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_b ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_b: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-b signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-b: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodB() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_b() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-b", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_b), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_b, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_b: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodB() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_b_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_b_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_b ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodB", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_b_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_b: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_b(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_b(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_b_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gboolean *out_arg_b, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(b)", 558s # out_arg_b); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_b_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_b: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodB() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_b() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_b_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gboolean *out_arg_b, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodB", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(b)", 558s # out_arg_b); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_b: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_b: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodB() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_b ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gboolean arg_b) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(b)", 558s # arg_b)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpelfr5h86.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpelfr5h86.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_arg_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_arg_y.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodY", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-y", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_y.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_y ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_y: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-y signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-y: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodY() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_y() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-y", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_y), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_y, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_y: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodY() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_y_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_y_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_y ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodY", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_y_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_y: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_y(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_y(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_y_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # guchar *out_arg_y, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(y)", 558s # out_arg_y); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_y_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_y: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodY() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_y() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_y_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # guchar *out_arg_y, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodY", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(y)", 558s # out_arg_y); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_y: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_y: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodY() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_y ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # guchar arg_y) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(y)", 558s # arg_y)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmprb6e8xxf.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmprb6e8xxf.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_arg_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_arg_n.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodN", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-n", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_n.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_n ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_n: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-n signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-n: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodN() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_n() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-n", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_n), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_n, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_n: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodN() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_n_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_n_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_n ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodN", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_n_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_n: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_n(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_n(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_n_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint16 *out_arg_n, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(n)", 558s # out_arg_n); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_n_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_n: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodN() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_n() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_n_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint16 *out_arg_n, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodN", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(n)", 558s # out_arg_n); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_n: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_n: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodN() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_n ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gint16 arg_n) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(n)", 558s # arg_n)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpid_ijn7t.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpid_ijn7t.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_arg_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_arg_q.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodQ", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-q", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_q.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_q ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_q: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-q signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-q: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodQ() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_q() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-q", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_q), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_q, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_q: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_q_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_q_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_q ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodQ", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_q_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_q: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_q(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_q(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_q_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint16 *out_arg_q, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(q)", 558s # out_arg_q); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_q_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_q: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_q() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_q_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint16 *out_arg_q, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodQ", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(q)", 558s # out_arg_q); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_q: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_q: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodQ() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_q ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # guint16 arg_q) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(q)", 558s # arg_q)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmp7klnsocz.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmp7klnsocz.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_arg_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_arg_i.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodI", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-i", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_i.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_i ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_i: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-i signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-i: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodI() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_i() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-i", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_i), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_i, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_i: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodI() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_i_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_i_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_i ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodI", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_i_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_i: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_i(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_i(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_i_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint *out_arg_i, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(i)", 558s # out_arg_i); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_i_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_i: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodI() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_i() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_i_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint *out_arg_i, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodI", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(i)", 558s # out_arg_i); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_i: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_i: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodI() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_i ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gint arg_i) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(i)", 558s # arg_i)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpcb40j99a.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpcb40j99a.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_arg_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_arg_u.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodU", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-u", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_u.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_u ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_u: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-u signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-u: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodU() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_u() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-u", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_u), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_u, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_u: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodU() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_u_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_u_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_u ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodU", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_u_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_u: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_u(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_u(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_u_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint *out_arg_u, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(u)", 558s # out_arg_u); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_u_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_u: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodU() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_u() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_u_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint *out_arg_u, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodU", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(u)", 558s # out_arg_u); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_u: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_u: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodU() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_u ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # guint arg_u) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(u)", 558s # arg_u)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmp3zwxi7jq.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmp3zwxi7jq.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_arg_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_arg_x.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodX", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-x", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_x.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_x ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_x: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-x signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-x: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodX() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_x() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-x", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_x), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_x, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_x: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodX() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_x_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_x_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_x ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodX", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_x_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_x: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_x(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_x(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_x_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint64 *out_arg_x, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(x)", 558s # out_arg_x); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_x_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_x: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodX() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_x() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_x_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gint64 *out_arg_x, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodX", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(x)", 558s # out_arg_x); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_x: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_x: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodX() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_x ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gint64 arg_x) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(x)", 558s # arg_x)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpmi_jpefe.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpmi_jpefe.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_arg_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_arg_t.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodT", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-t", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_t.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_t ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_t: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-t signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-t: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodT() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_t() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-t", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_t), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_t, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_t: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodT() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_t_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_t_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_t ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodT", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_t_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_t: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_t(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_t(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_t_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint64 *out_arg_t, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(t)", 558s # out_arg_t); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_t_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_t: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodT() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_t() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_t_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # guint64 *out_arg_t, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodT", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(t)", 558s # out_arg_t); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_t: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_t: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodT() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_t ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # guint64 arg_t) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(t)", 558s # arg_t)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpl4modgr2.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpl4modgr2.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_arg_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_arg_d.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodD", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-d", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_d.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_d ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_d: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-d signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-d: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodD() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_d() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-d", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_d), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_d, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_d: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodD() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_d_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_d_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_d ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodD", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_d_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_d: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_d(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_d(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_d_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gdouble *out_arg_d, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(d)", 558s # out_arg_d); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_d_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_d: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_d() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_d_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gdouble *out_arg_d, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodD", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(d)", 558s # out_arg_d); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_d: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_d: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodD() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_d ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gdouble arg_d) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(d)", 558s # arg_d)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpf54o8hhy.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpf54o8hhy.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_arg_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_arg_s.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodS", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-s", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_s.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_s ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_s: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-s signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-s: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodS() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_s() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-s", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_s), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_s, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_s: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodS() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_s_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_s_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_s ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodS", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_s_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_s: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_s(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_s(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_s_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_s, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(s)", 558s # out_arg_s); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_s_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_s: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodS() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_s() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_s_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_s, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodS", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(s)", 558s # out_arg_s); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_s: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_s: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodS() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_s ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *arg_s) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(s)", 558s # arg_s)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpnhxahswo.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpnhxahswo.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_arg_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_arg_o.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodO", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-o", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_o.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_o ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_o: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-o signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-o: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodO() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_o() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-o", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_o), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_o, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_o: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodO() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_o_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_o_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_o ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodO", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_o_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_o: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_o(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_o(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_o_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_o, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(o)", 558s # out_arg_o); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_o_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_o: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodO() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_o() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_o_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_o, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodO", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(o)", 558s # out_arg_o); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_o: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_o: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodO() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_o ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *arg_o) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(o)", 558s # arg_o)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmp97h2cj__.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmp97h2cj__.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_arg_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_arg_g.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodG", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-g", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_g.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_g ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_g: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-g signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-g: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodG() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_g() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-g", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_g), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_g, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_g: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodG() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_g_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_g_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_g ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodG", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_g_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_g: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_g(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_g(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_g_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_g, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(g)", 558s # out_arg_g); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_g_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_g: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodG() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_g() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_g_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_g, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodG", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(g)", 558s # out_arg_g); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_g: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_g: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodG() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_g ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *arg_g) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(g)", 558s # arg_g)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmptzqolp8g.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmptzqolp8g.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_arg_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_arg_h.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodH", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-h", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_h.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_h ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_h: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-h signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-h: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodH() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_h() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-h", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_h), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_h, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_h: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodH() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_h_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_h_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_h ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodH", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_h_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_h: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_h(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_h(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_h_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant **out_arg_h, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(@h)", 558s # out_arg_h); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_h_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_h: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodH() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_h() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_h_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant **out_arg_h, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodH", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(@h)", 558s # out_arg_h); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_h: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_h: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodH() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_h ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # GVariant *arg_h) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(@h)", 558s # arg_h)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmp89w28pkv.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmp89w28pkv.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_arg_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_arg_ay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAy", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-ay", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_ay ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_ay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ay signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-ay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAy() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_ay() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-ay", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ay), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_ay, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ay: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_ay_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ay_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_ay ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAy", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ay_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ay(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ay(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ay_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_ay, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^ay)", 558s # out_arg_ay); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ay_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ay() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ay_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar **out_arg_ay, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAy", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^ay)", 558s # out_arg_ay); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_ay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_ay: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAy() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_ay ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *arg_ay) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(^ay)", 558s # arg_ay)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpnemic7fs.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpnemic7fs.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_arg_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_arg_as.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAs", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-as", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_as.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_as ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_as: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-as signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-as: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAs() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_as() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-as", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_as), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_as, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_as: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_as_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_as_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_as ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAs", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_as_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_as(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_as(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_as_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_as, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^as)", 558s # out_arg_as); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_as_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_as() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_as_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_as, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAs", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^as)", 558s # out_arg_as); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_as: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_as: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_as ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *const *arg_as) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(^as)", 558s # arg_as)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmps3fkov8g.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmps3fkov8g.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_arg_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_arg_ao.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAo", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-ao", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_ao.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_ao ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_ao: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ao signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-ao: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAo() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_ao() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-ao", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ao), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_ao, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_ao_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ao_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_ao ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAo", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ao(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ao(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ao_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_ao, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^ao)", 558s # out_arg_ao); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_ao_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_ao() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_ao_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_ao, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAo", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^ao)", 558s # out_arg_ao); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_ao: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_ao: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAo() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_ao ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *const *arg_ao) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(^ao)", 558s # arg_ao)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmpewfmepd1.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmpewfmepd1.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_arg_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_arg_aay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAay", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-aay", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_aay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_aay ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_aay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-aay signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-aay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAay() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_aay() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-aay", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_aay), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_aay, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_aay_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_aay_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_aay ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAay", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_aay(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_aay(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_aay_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_aay, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^aay)", 558s # out_arg_aay); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_aay_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_aay() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_aay_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # gchar ***out_arg_aay, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAay", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(^aay)", 558s # out_arg_aay); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_aay: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_aay: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAay() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_aay ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # const gchar *const *arg_aay) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(^aay)", 558s # arg_aay)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s # 558s # /tmp/tmp_bbbmrec/tmps3tgm7gj.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_bbbmrec/tmps3tgm7gj.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_arg_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "arg_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_arg_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgMethodAsv", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-single-arg-method-asv", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_method_info_single_arg_method_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_method_marshal_single_arg_method_asv ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_single_arg_method_asv: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-asv signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectUsefulInterface::handle-single-arg-method-asv: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the SingleArgMethodAsv() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_useful_interface_complete_single_arg_method_asv() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-single-arg-method-asv", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_asv), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_useful_interface_method_marshal_single_arg_method_asv, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_call_single_arg_method_asv_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_asv_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_useful_interface_call_single_arg_method_asv ( 558s # OrgProjectUsefulInterface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAsv", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv_finish: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_asv(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_asv(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_asv_finish ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant **out_arg_asv, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(@a{sv})", 558s # out_arg_asv); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_call_single_arg_method_asv_sync: 558s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 558s # * @out_arg_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_call_single_arg_method_asv() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_useful_interface_call_single_arg_method_asv_sync ( 558s # OrgProjectUsefulInterface *proxy, 558s # GVariant **out_arg_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SingleArgMethodAsv", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(@a{sv})", 558s # out_arg_asv); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_complete_single_arg_method_asv: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @arg_asv: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SingleArgMethodAsv() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_useful_interface_complete_single_arg_method_asv ( 558s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # GVariant *arg_asv) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(@a{sv})", 558s # arg_asv)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 12 __main__.TestCodegen.test_generate_methods_marshallers_multiple_in_args 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpb0pjp8_q 558s # /tmp/tmpb0pjp8_q/tmpjks9xms2.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpb0pjp8_q/tmpjks9xms2.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 20); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # g_marshal_value_peek_boolean (param_values + 2), 558s # g_marshal_value_peek_uchar (param_values + 3), 558s # g_marshal_value_peek_int (param_values + 4), 558s # g_marshal_value_peek_uint (param_values + 5), 558s # g_marshal_value_peek_int (param_values + 6), 558s # g_marshal_value_peek_uint (param_values + 7), 558s # g_marshal_value_peek_int64 (param_values + 8), 558s # g_marshal_value_peek_uint64 (param_values + 9), 558s # g_marshal_value_peek_double (param_values + 10), 558s # g_marshal_value_peek_string (param_values + 11), 558s # g_marshal_value_peek_string (param_values + 12), 558s # g_marshal_value_peek_string (param_values + 13), 558s # g_marshal_value_peek_variant (param_values + 14), 558s # g_marshal_value_peek_string (param_values + 15), 558s # g_marshal_value_peek_boxed (param_values + 16), 558s # g_marshal_value_peek_boxed (param_values + 17), 558s # g_marshal_value_peek_boxed (param_values + 18), 558s # g_marshal_value_peek_variant (param_values + 19), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.CallableIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectCallableIface 558s # * @title: OrgProjectCallableIface 558s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.CallableIface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_pointers[] = 558s # { 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_b.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_y.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_n.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_q.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_i.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_u.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_x.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_t.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_d.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_s.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_o.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_g.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_h.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_as.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_method_with_many_args = 558s # { 558s # { 558s # -1, 558s # (gchar *) "MethodWithManyArgs", 558s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-method-with-many-args", 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_pointers[] = 558s # { 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_b.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_y.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_n.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_q.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_i.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_u.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_x.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_t.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_d.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_s.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_o.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_g.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_h.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ay.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_as.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ao.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_aay.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_same_method_with_many_args = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SameMethodWithManyArgs", 558s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-same-method-with-many-args", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 558s # { 558s # &_org_project_callable_iface_method_info_method_with_many_args.parent_struct, 558s # &_org_project_callable_iface_method_info_same_method_with_many_args.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.CallableIface", 558s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-callable-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_callable_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_callable_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_callable_iface_method_marshal_method_with_many_args ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_callable_iface_method_marshal_same_method_with_many_args ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectCallableIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-method-with-many-args signal. 558s # * @handle_same_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-same-method-with-many-args signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.CallableIface. 558s # */ 558s # 558s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectCallableIface::handle-method-with-many-args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_an_b: Argument passed by remote caller. 558s # * @arg_an_y: Argument passed by remote caller. 558s # * @arg_an_n: Argument passed by remote caller. 558s # * @arg_an_q: Argument passed by remote caller. 558s # * @arg_an_i: Argument passed by remote caller. 558s # * @arg_an_u: Argument passed by remote caller. 558s # * @arg_an_x: Argument passed by remote caller. 558s # * @arg_an_t: Argument passed by remote caller. 558s # * @arg_an_d: Argument passed by remote caller. 558s # * @arg_an_s: Argument passed by remote caller. 558s # * @arg_an_o: Argument passed by remote caller. 558s # * @arg_an_g: Argument passed by remote caller. 558s # * @arg_an_h: Argument passed by remote caller. 558s # * @arg_an_ay: Argument passed by remote caller. 558s # * @arg_an_as: Argument passed by remote caller. 558s # * @arg_an_ao: Argument passed by remote caller. 558s # * @arg_an_aay: Argument passed by remote caller. 558s # * @arg_an_asv: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_callable_iface_complete_method_with_many_args() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-method-with-many-args", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_method_with_many_args), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_callable_iface_method_marshal_method_with_many_args, 558s # G_TYPE_BOOLEAN, 558s # 19, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN, G_TYPE_UCHAR, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT64, G_TYPE_UINT64, G_TYPE_DOUBLE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT, G_TYPE_STRING, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_VARIANT); 558s # 558s # /** 558s # * OrgProjectCallableIface::handle-same-method-with-many-args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_an_b: Argument passed by remote caller. 558s # * @arg_an_y: Argument passed by remote caller. 558s # * @arg_an_n: Argument passed by remote caller. 558s # * @arg_an_q: Argument passed by remote caller. 558s # * @arg_an_i: Argument passed by remote caller. 558s # * @arg_an_u: Argument passed by remote caller. 558s # * @arg_an_x: Argument passed by remote caller. 558s # * @arg_an_t: Argument passed by remote caller. 558s # * @arg_an_d: Argument passed by remote caller. 558s # * @arg_an_s: Argument passed by remote caller. 558s # * @arg_an_o: Argument passed by remote caller. 558s # * @arg_an_g: Argument passed by remote caller. 558s # * @arg_an_h: Argument passed by remote caller. 558s # * @arg_an_ay: Argument passed by remote caller. 558s # * @arg_an_as: Argument passed by remote caller. 558s # * @arg_an_ao: Argument passed by remote caller. 558s # * @arg_an_aay: Argument passed by remote caller. 558s # * @arg_an_asv: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the SameMethodWithManyArgs() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_callable_iface_complete_same_method_with_many_args() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-same-method-with-many-args", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_same_method_with_many_args), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_callable_iface_method_marshal_same_method_with_many_args, 558s # G_TYPE_BOOLEAN, 558s # 19, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN, G_TYPE_UCHAR, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT64, G_TYPE_UINT64, G_TYPE_DOUBLE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT, G_TYPE_STRING, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_VARIANT); 558s # 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_callable_iface_call_method_with_many_args ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args_finish: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_method_with_many_args(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_callable_iface_call_method_with_many_args(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_method_with_many_args_finish ( 558s # OrgProjectCallableIface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args_sync: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_method_with_many_args_sync ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_same_method_with_many_args: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the SameMethodWithManyArgs() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_call_same_method_with_many_args_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_call_same_method_with_many_args_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_callable_iface_call_same_method_with_many_args ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "SameMethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_same_method_with_many_args_finish: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_same_method_with_many_args(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_callable_iface_call_same_method_with_many_args(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_same_method_with_many_args_finish ( 558s # OrgProjectCallableIface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_same_method_with_many_args_sync: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the SameMethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_call_same_method_with_many_args() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_same_method_with_many_args_sync ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "SameMethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_complete_method_with_many_args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the MethodWithManyArgs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_callable_iface_complete_method_with_many_args ( 558s # OrgProjectCallableIface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_complete_same_method_with_many_args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the SameMethodWithManyArgs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_callable_iface_complete_same_method_with_many_args ( 558s # OrgProjectCallableIface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceProxy: 558s # * 558s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectCallableIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectCallableIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_callable_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_callable_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_callable_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceSkeleton: 558s # * 558s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectCallableIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectCallableIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_callable_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_callable_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_callable_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 558s # { 558s # _org_project_callable_iface_skeleton_handle_method_call, 558s # _org_project_callable_iface_skeleton_handle_get_property, 558s # _org_project_callable_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_callable_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_callable_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.CallableIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_callable_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.OtherCallableIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectOtherCallableIface 558s # * @title: OrgProjectOtherCallableIface 558s # * @short_description: Generated C code for the org.project.OtherCallableIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.OtherCallableIface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.OtherCallableIface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_pointers[] = 558s # { 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_b.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_y.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_n.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_q.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_i.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_u.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_x.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_t.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_d.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_s.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_o.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_g.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_h.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_as.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay.parent_struct, 558s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_other_callable_iface_method_info_method_with_many_args = 558s # { 558s # { 558s # -1, 558s # (gchar *) "MethodWithManyArgs", 558s # (GDBusArgInfo **) &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "handle-method-with-many-args", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_other_callable_iface_method_info_pointers[] = 558s # { 558s # &_org_project_other_callable_iface_method_info_method_with_many_args.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_other_callable_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.OtherCallableIface", 558s # (GDBusMethodInfo **) &_org_project_other_callable_iface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-other-callable-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_other_callable_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.OtherCallableIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_other_callable_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectOtherCallableIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_other_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_other_callable_iface_method_marshal_method_with_many_args ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectOtherCallableIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.OtherCallableIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherCallableIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_method_with_many_args: Handler for the #OrgProjectOtherCallableIface::handle-method-with-many-args signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.OtherCallableIface. 558s # */ 558s # 558s # typedef OrgProjectOtherCallableIfaceIface OrgProjectOtherCallableIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectOtherCallableIface, org_project_other_callable_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_other_callable_iface_default_init (OrgProjectOtherCallableIfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectOtherCallableIface::handle-method-with-many-args: 558s # * @object: A #OrgProjectOtherCallableIface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @arg_an_b: Argument passed by remote caller. 558s # * @arg_an_y: Argument passed by remote caller. 558s # * @arg_an_n: Argument passed by remote caller. 558s # * @arg_an_q: Argument passed by remote caller. 558s # * @arg_an_i: Argument passed by remote caller. 558s # * @arg_an_u: Argument passed by remote caller. 558s # * @arg_an_x: Argument passed by remote caller. 558s # * @arg_an_t: Argument passed by remote caller. 558s # * @arg_an_d: Argument passed by remote caller. 558s # * @arg_an_s: Argument passed by remote caller. 558s # * @arg_an_o: Argument passed by remote caller. 558s # * @arg_an_g: Argument passed by remote caller. 558s # * @arg_an_h: Argument passed by remote caller. 558s # * @arg_an_ay: Argument passed by remote caller. 558s # * @arg_an_as: Argument passed by remote caller. 558s # * @arg_an_ao: Argument passed by remote caller. 558s # * @arg_an_aay: Argument passed by remote caller. 558s # * @arg_an_asv: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_other_callable_iface_complete_method_with_many_args() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-method-with-many-args", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectOtherCallableIfaceIface, handle_method_with_many_args), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_other_callable_iface_method_marshal_method_with_many_args, 558s # G_TYPE_BOOLEAN, 558s # 19, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN, G_TYPE_UCHAR, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT64, G_TYPE_UINT64, G_TYPE_DOUBLE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT, G_TYPE_STRING, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_VARIANT); 558s # 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_call_method_with_many_args: 558s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_other_callable_iface_call_method_with_many_args ( 558s # OrgProjectOtherCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_call_method_with_many_args_finish: 558s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_call_method_with_many_args(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_other_callable_iface_call_method_with_many_args(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_other_callable_iface_call_method_with_many_args_finish ( 558s # OrgProjectOtherCallableIface *proxy, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_call_method_with_many_args_sync: 558s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 558s # * @arg_an_b: Argument to pass with the method invocation. 558s # * @arg_an_y: Argument to pass with the method invocation. 558s # * @arg_an_n: Argument to pass with the method invocation. 558s # * @arg_an_q: Argument to pass with the method invocation. 558s # * @arg_an_i: Argument to pass with the method invocation. 558s # * @arg_an_u: Argument to pass with the method invocation. 558s # * @arg_an_x: Argument to pass with the method invocation. 558s # * @arg_an_t: Argument to pass with the method invocation. 558s # * @arg_an_d: Argument to pass with the method invocation. 558s # * @arg_an_s: Argument to pass with the method invocation. 558s # * @arg_an_o: Argument to pass with the method invocation. 558s # * @arg_an_g: Argument to pass with the method invocation. 558s # * @arg_an_h: Argument to pass with the method invocation. 558s # * @arg_an_ay: Argument to pass with the method invocation. 558s # * @arg_an_as: Argument to pass with the method invocation. 558s # * @arg_an_ao: Argument to pass with the method invocation. 558s # * @arg_an_aay: Argument to pass with the method invocation. 558s # * @arg_an_asv: Argument to pass with the method invocation. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_other_callable_iface_call_method_with_many_args_sync ( 558s # OrgProjectOtherCallableIface *proxy, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "()"); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_complete_method_with_many_args: 558s # * @object: A #OrgProjectOtherCallableIface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the MethodWithManyArgs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_other_callable_iface_complete_method_with_many_args ( 558s # OrgProjectOtherCallableIface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("()")); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherCallableIfaceProxy: 558s # * 558s # * The #OrgProjectOtherCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherCallableIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherCallableIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectOtherCallableIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_callable_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_other_callable_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_init (OrgProjectOtherCallableIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_other_callable_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, OrgProjectOtherCallableIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_callable_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_class_init (OrgProjectOtherCallableIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_callable_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_other_callable_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_other_callable_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_other_callable_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_other_callable_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_callable_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_callable_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_callable_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherCallableIface * 558s # org_project_other_callable_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_callable_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherCallableIface * 558s # org_project_other_callable_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_other_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_callable_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_callable_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherCallableIface * 558s # org_project_other_callable_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_other_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherCallableIface * 558s # org_project_other_callable_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherCallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherCallableIfaceSkeleton: 558s # * 558s # * The #OrgProjectOtherCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherCallableIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherCallableIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectOtherCallableIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_other_callable_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_other_callable_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_other_callable_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_other_callable_iface_skeleton_vtable = 558s # { 558s # _org_project_other_callable_iface_skeleton_handle_method_call, 558s # _org_project_other_callable_iface_skeleton_handle_get_property, 558s # _org_project_other_callable_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_other_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_other_callable_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_other_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_other_callable_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_other_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_other_callable_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_other_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_other_callable_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_other_callable_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherCallableIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_callable_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_other_callable_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_skeleton_init (OrgProjectOtherCallableIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_other_callable_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, OrgProjectOtherCallableIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_skeleton_class_init (OrgProjectOtherCallableIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_callable_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_other_callable_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_other_callable_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_other_callable_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_other_callable_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_other_callable_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.OtherCallableIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectOtherCallableIface * 558s # org_project_other_callable_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 13 __main__.TestCodegen.test_generate_methods_marshallers_multiple_out_args 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpt1al3xjt 558s # /tmp/tmpt1al3xjt/tmpase1701x.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpt1al3xjt/tmpase1701x.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.CallableIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectCallableIface 558s # * @title: OrgProjectCallableIface 558s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for org.project.CallableIface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_pointers[] = 558s # { 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_b.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_y.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_n.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_q.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_i.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_u.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_x.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_t.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_d.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_s.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_o.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_g.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_h.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ay.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_as.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ao.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_aay.parent_struct, 558s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_method_with_many_args = 558s # { 558s # { 558s # -1, 558s # (gchar *) "MethodWithManyArgs", 558s # NULL, 558s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-method-with-many-args", 558s # FALSE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 558s # { 558s # &_org_project_callable_iface_method_info_method_with_many_args.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.CallableIface", 558s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-callable-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_callable_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_callable_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_callable_iface_method_marshal_method_with_many_args ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectCallableIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-method-with-many-args signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.CallableIface. 558s # */ 558s # 558s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * OrgProjectCallableIface::handle-method-with-many-args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * 558s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_callable_iface_complete_method_with_many_args() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-method-with-many-args", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_method_with_many_args), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # org_project_callable_iface_method_marshal_method_with_many_args, 558s # G_TYPE_BOOLEAN, 558s # 1, 558s # G_TYPE_DBUS_METHOD_INVOCATION); 558s # 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # org_project_callable_iface_call_method_with_many_args ( 558s # OrgProjectCallableIface *proxy, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args_finish: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @out_an_b: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_y: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_n: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_q: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_i: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_u: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_x: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_t: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_d: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_s: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_o: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_g: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_h: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_method_with_many_args(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with org_project_callable_iface_call_method_with_many_args(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_method_with_many_args_finish ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean *out_an_b, 558s # guchar *out_an_y, 558s # gint16 *out_an_n, 558s # guint16 *out_an_q, 558s # gint *out_an_i, 558s # guint *out_an_u, 558s # gint64 *out_an_x, 558s # guint64 *out_an_t, 558s # gdouble *out_an_d, 558s # gchar **out_an_s, 558s # gchar **out_an_o, 558s # gchar **out_an_g, 558s # GVariant **out_an_h, 558s # gchar **out_an_ay, 558s # gchar ***out_an_as, 558s # gchar ***out_an_ao, 558s # gchar ***out_an_aay, 558s # GVariant **out_an_asv, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # out_an_b, 558s # out_an_y, 558s # out_an_n, 558s # out_an_q, 558s # out_an_i, 558s # out_an_u, 558s # out_an_x, 558s # out_an_t, 558s # out_an_d, 558s # out_an_s, 558s # out_an_o, 558s # out_an_g, 558s # out_an_h, 558s # out_an_ay, 558s # out_an_as, 558s # out_an_ao, 558s # out_an_aay, 558s # out_an_asv); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_call_method_with_many_args_sync: 558s # * @proxy: A #OrgProjectCallableIfaceProxy. 558s # * @out_an_b: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_y: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_n: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_q: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_i: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_u: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_x: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_t: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_d: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_s: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_o: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_g: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_h: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_an_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 558s # * @out_an_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # org_project_callable_iface_call_method_with_many_args_sync ( 558s # OrgProjectCallableIface *proxy, 558s # gboolean *out_an_b, 558s # guchar *out_an_y, 558s # gint16 *out_an_n, 558s # guint16 *out_an_q, 558s # gint *out_an_i, 558s # guint *out_an_u, 558s # gint64 *out_an_x, 558s # guint64 *out_an_t, 558s # gdouble *out_an_d, 558s # gchar **out_an_s, 558s # gchar **out_an_o, 558s # gchar **out_an_g, 558s # GVariant **out_an_h, 558s # gchar **out_an_ay, 558s # gchar ***out_an_as, 558s # gchar ***out_an_ao, 558s # gchar ***out_an_aay, 558s # GVariant **out_an_asv, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 558s # "MethodWithManyArgs", 558s # g_variant_new ("()"), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # out_an_b, 558s # out_an_y, 558s # out_an_n, 558s # out_an_q, 558s # out_an_i, 558s # out_an_u, 558s # out_an_x, 558s # out_an_t, 558s # out_an_d, 558s # out_an_s, 558s # out_an_o, 558s # out_an_g, 558s # out_an_h, 558s # out_an_ay, 558s # out_an_as, 558s # out_an_ao, 558s # out_an_aay, 558s # out_an_asv); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_complete_method_with_many_args: 558s # * @object: A #OrgProjectCallableIface. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @an_b: Parameter to return. 558s # * @an_y: Parameter to return. 558s # * @an_n: Parameter to return. 558s # * @an_q: Parameter to return. 558s # * @an_i: Parameter to return. 558s # * @an_u: Parameter to return. 558s # * @an_x: Parameter to return. 558s # * @an_t: Parameter to return. 558s # * @an_d: Parameter to return. 558s # * @an_s: Parameter to return. 558s # * @an_o: Parameter to return. 558s # * @an_g: Parameter to return. 558s # * @an_h: Parameter to return. 558s # * @an_ay: Parameter to return. 558s # * @an_as: Parameter to return. 558s # * @an_ao: Parameter to return. 558s # * @an_aay: Parameter to return. 558s # * @an_asv: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the MethodWithManyArgs() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # org_project_callable_iface_complete_method_with_many_args ( 558s # OrgProjectCallableIface *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # gboolean an_b, 558s # guchar an_y, 558s # gint16 an_n, 558s # guint16 an_q, 558s # gint an_i, 558s # guint an_u, 558s # gint64 an_x, 558s # guint64 an_t, 558s # gdouble an_d, 558s # const gchar *an_s, 558s # const gchar *an_o, 558s # const gchar *an_g, 558s # GVariant *an_h, 558s # const gchar *an_ay, 558s # const gchar *const *an_as, 558s # const gchar *const *an_ao, 558s # const gchar *const *an_aay, 558s # GVariant *an_asv) 558s # { 558s # g_dbus_method_invocation_return_value (invocation, 558s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # an_b, 558s # an_y, 558s # an_n, 558s # an_q, 558s # an_i, 558s # an_u, 558s # an_x, 558s # an_t, 558s # an_d, 558s # an_s, 558s # an_o, 558s # an_g, 558s # an_h, 558s # an_ay, 558s # an_as, 558s # an_ao, 558s # an_aay, 558s # an_asv)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceProxy: 558s # * 558s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectCallableIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectCallableIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_callable_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_callable_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_callable_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.CallableIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_CALLABLE_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceSkeleton: 558s # * 558s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectCallableIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectCallableIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectCallableIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_callable_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_callable_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_callable_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 558s # { 558s # _org_project_callable_iface_skeleton_handle_method_call, 558s # _org_project_callable_iface_skeleton_handle_get_property, 558s # _org_project_callable_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_callable_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_callable_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.CallableIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_callable_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_callable_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectCallableIface * 558s # org_project_callable_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 14 __main__.TestCodegen.test_generate_methods_marshallers_with_unix_fds 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpgq3ynwbk 558s # /tmp/tmpgq3ynwbk/tmp7ku9nr4k.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpgq3ynwbk/tmp7ku9nr4k.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_OBJECT_STRING ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectObjectStringFunc) 558s # (void *data1, 558s # GDBusMethodInvocation *arg_method_invocation, 558s # GUnixFDList *arg_fd_list, 558s # const gchar *arg_greeting, 558s # void *data2); 558s # _GDbusCodegenMarshalBoolean_ObjectObjectStringFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # gboolean v_return; 558s # 558s # g_return_if_fail (return_value != NULL); 558s # g_return_if_fail (n_param_values == 4); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalBoolean_ObjectObjectStringFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # v_return = 558s # callback (data1, 558s # g_marshal_value_peek_object (param_values + 1), 558s # g_marshal_value_peek_object (param_values + 2), 558s # g_marshal_value_peek_string (param_values + 3), 558s # data2); 558s # 558s # g_value_set_boolean (return_value, v_return); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface test.FDPassing 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:TestFDPassing 558s # * @title: TestFDPassing 558s # * @short_description: Generated C code for the test.FDPassing D-Bus interface 558s # * 558s # * This section contains code for working with the test.FDPassing D-Bus interface in C. 558s # */ 558s # 558s # /* ---- Introspection data for test.FDPassing ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _test_fdpassing_method_info_hello_fd_IN_ARG_greeting = 558s # { 558s # { 558s # -1, 558s # (gchar *) "greeting", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _test_fdpassing_method_info_hello_fd_IN_ARG_pointers[] = 558s # { 558s # &_test_fdpassing_method_info_hello_fd_IN_ARG_greeting.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _test_fdpassing_method_info_hello_fd_OUT_ARG_response = 558s # { 558s # { 558s # -1, 558s # (gchar *) "response", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _test_fdpassing_method_info_hello_fd_OUT_ARG_pointers[] = 558s # { 558s # &_test_fdpassing_method_info_hello_fd_OUT_ARG_response.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusMethodInfo _test_fdpassing_method_info_hello_fd = 558s # { 558s # { 558s # -1, 558s # (gchar *) "HelloFD", 558s # (GDBusArgInfo **) &_test_fdpassing_method_info_hello_fd_IN_ARG_pointers, 558s # (GDBusArgInfo **) &_test_fdpassing_method_info_hello_fd_OUT_ARG_pointers, 558s # NULL 558s # }, 558s # "handle-hello-fd", 558s # TRUE 558s # }; 558s # 558s # static const GDBusMethodInfo * const _test_fdpassing_method_info_pointers[] = 558s # { 558s # &_test_fdpassing_method_info_hello_fd.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _test_fdpassing_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "test.FDPassing", 558s # (GDBusMethodInfo **) &_test_fdpassing_method_info_pointers, 558s # NULL, 558s # NULL, 558s # NULL 558s # }, 558s # "test-fdpassing", 558s # }; 558s # 558s # 558s # /** 558s # * test_fdpassing_interface_info: 558s # * 558s # * Gets a machine-readable description of the test.FDPassing D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # test_fdpassing_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * test_fdpassing_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #TestFDPassing interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # test_fdpassing_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # test_fdpassing_method_marshal_hello_fd ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_OBJECT_STRING (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * TestFDPassing: 558s # * 558s # * Abstract interface type for the D-Bus interface test.FDPassing. 558s # */ 558s # 558s # /** 558s # * TestFDPassingIface: 558s # * @parent_iface: The parent interface. 558s # * @handle_hello_fd: Handler for the #TestFDPassing::handle-hello-fd signal. 558s # * 558s # * Virtual table for the D-Bus interface test.FDPassing. 558s # */ 558s # 558s # typedef TestFDPassingIface TestFDPassingInterface; 558s # G_DEFINE_INTERFACE (TestFDPassing, test_fdpassing, G_TYPE_OBJECT) 558s # 558s # static void 558s # test_fdpassing_default_init (TestFDPassingIface *iface) 558s # { 558s # /* GObject signals for incoming D-Bus method calls: */ 558s # /** 558s # * TestFDPassing::handle-hello-fd: 558s # * @object: A #TestFDPassing. 558s # * @invocation: A #GDBusMethodInvocation. 558s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 558s # * @arg_greeting: Argument passed by remote caller. 558s # * 558s # * Signal emitted when a remote caller is invoking the HelloFD() D-Bus method. 558s # * 558s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call test_fdpassing_complete_hello_fd() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 558s # * 558s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 558s # */ 558s # g_signal_new ("handle-hello-fd", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (TestFDPassingIface, handle_hello_fd), 558s # g_signal_accumulator_true_handled, 558s # NULL, 558s # test_fdpassing_method_marshal_hello_fd, 558s # G_TYPE_BOOLEAN, 558s # 3, 558s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UNIX_FD_LIST, G_TYPE_STRING); 558s # 558s # } 558s # 558s # /** 558s # * test_fdpassing_call_hello_fd: 558s # * @proxy: A #TestFDPassingProxy. 558s # * @arg_greeting: Argument to pass with the method invocation. 558s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously invokes the HelloFD() D-Bus method on @proxy. 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call test_fdpassing_call_hello_fd_finish() to get the result of the operation. 558s # * 558s # * See test_fdpassing_call_hello_fd_sync() for the synchronous, blocking version of this method. 558s # */ 558s # void 558s # test_fdpassing_call_hello_fd ( 558s # TestFDPassing *proxy, 558s # const gchar *arg_greeting, 558s # GUnixFDList *fd_list, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_dbus_proxy_call_with_unix_fd_list (G_DBUS_PROXY (proxy), 558s # "HelloFD", 558s # g_variant_new ("(s)", 558s # arg_greeting), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # fd_list, 558s # cancellable, 558s # callback, 558s # user_data); 558s # } 558s # 558s # /** 558s # * test_fdpassing_call_hello_fd_finish: 558s # * @proxy: A #TestFDPassingProxy. 558s # * @out_response: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_fd_list: (out) (optional) (nullable): Return location for a #GUnixFDList or %NULL to ignore. 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_call_hello_fd(). 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Finishes an operation started with test_fdpassing_call_hello_fd(). 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # test_fdpassing_call_hello_fd_finish ( 558s # TestFDPassing *proxy, 558s # gchar **out_response, 558s # GUnixFDList **out_fd_list, 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_with_unix_fd_list_finish (G_DBUS_PROXY (proxy), out_fd_list, res, error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(s)", 558s # out_response); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * test_fdpassing_call_hello_fd_sync: 558s # * @proxy: A #TestFDPassingProxy. 558s # * @arg_greeting: Argument to pass with the method invocation. 558s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 558s # * @out_response: (out) (optional): Return location for return parameter or %NULL to ignore. 558s # * @out_fd_list: (out) (optional) (nullable): Return location for a #GUnixFDList or %NULL. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL. 558s # * 558s # * Synchronously invokes the HelloFD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 558s # * 558s # * See test_fdpassing_call_hello_fd() for the asynchronous version of this method. 558s # * 558s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 558s # */ 558s # gboolean 558s # test_fdpassing_call_hello_fd_sync ( 558s # TestFDPassing *proxy, 558s # const gchar *arg_greeting, 558s # GUnixFDList *fd_list, 558s # gchar **out_response, 558s # GUnixFDList **out_fd_list, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GVariant *_ret; 558s # _ret = g_dbus_proxy_call_with_unix_fd_list_sync (G_DBUS_PROXY (proxy), 558s # "HelloFD", 558s # g_variant_new ("(s)", 558s # arg_greeting), 558s # G_DBUS_CALL_FLAGS_NONE, 558s # -1, 558s # fd_list, 558s # out_fd_list, 558s # cancellable, 558s # error); 558s # if (_ret == NULL) 558s # goto _out; 558s # g_variant_get (_ret, 558s # "(s)", 558s # out_response); 558s # g_variant_unref (_ret); 558s # _out: 558s # return _ret != NULL; 558s # } 558s # 558s # /** 558s # * test_fdpassing_complete_hello_fd: 558s # * @object: A #TestFDPassing. 558s # * @invocation: (transfer full): A #GDBusMethodInvocation. 558s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 558s # * @response: Parameter to return. 558s # * 558s # * Helper function used in service implementations to finish handling invocations of the HelloFD() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 558s # * 558s # * This method will free @invocation, you cannot use it afterwards. 558s # */ 558s # void 558s # test_fdpassing_complete_hello_fd ( 558s # TestFDPassing *object G_GNUC_UNUSED, 558s # GDBusMethodInvocation *invocation, 558s # GUnixFDList *fd_list, 558s # const gchar *response) 558s # { 558s # g_dbus_method_invocation_return_value_with_unix_fd_list (invocation, 558s # g_variant_new ("(s)", 558s # response), 558s # fd_list); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * TestFDPassingProxy: 558s # * 558s # * The #TestFDPassingProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * TestFDPassingProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #TestFDPassingProxy. 558s # */ 558s # 558s # struct _TestFDPassingProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void test_fdpassing_proxy_iface_init (TestFDPassingIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingProxy, test_fdpassing_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (TestFDPassingProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingProxy, test_fdpassing_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # test_fdpassing_proxy_finalize (GObject *object) 558s # { 558s # TestFDPassingProxy *proxy = TEST_FDPASSING_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (test_fdpassing_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_TEST_FDPASSING); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_TEST_FDPASSING); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # TestFDPassingProxy *proxy = TEST_FDPASSING_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_init (TestFDPassingProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = test_fdpassing_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_TEST_FDPASSING_PROXY, TestFDPassingProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), test_fdpassing_interface_info ()); 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_class_init (TestFDPassingProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = test_fdpassing_proxy_finalize; 558s # gobject_class->get_property = test_fdpassing_proxy_get_property; 558s # gobject_class->set_property = test_fdpassing_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = test_fdpassing_proxy_g_signal; 558s # proxy_class->g_properties_changed = test_fdpassing_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (TestFDPassingProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # test_fdpassing_proxy_iface_init (TestFDPassingIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * test_fdpassing_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface test.FDPassing. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call test_fdpassing_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See test_fdpassing_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # test_fdpassing_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_TEST_FDPASSING_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "test.FDPassing", NULL); 558s # } 558s # 558s # /** 558s # * test_fdpassing_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with test_fdpassing_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # TestFDPassing * 558s # test_fdpassing_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return TEST_FDPASSING (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * test_fdpassing_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface test.FDPassing. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See test_fdpassing_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # TestFDPassing * 558s # test_fdpassing_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_TEST_FDPASSING_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "test.FDPassing", NULL); 558s # if (ret != NULL) 558s # return TEST_FDPASSING (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * test_fdpassing_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like test_fdpassing_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call test_fdpassing_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See test_fdpassing_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # test_fdpassing_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_TEST_FDPASSING_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "test.FDPassing", NULL); 558s # } 558s # 558s # /** 558s # * test_fdpassing_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with test_fdpassing_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # TestFDPassing * 558s # test_fdpassing_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return TEST_FDPASSING (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * test_fdpassing_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like test_fdpassing_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See test_fdpassing_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # TestFDPassing * 558s # test_fdpassing_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_TEST_FDPASSING_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "test.FDPassing", NULL); 558s # if (ret != NULL) 558s # return TEST_FDPASSING (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * TestFDPassingSkeleton: 558s # * 558s # * The #TestFDPassingSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * TestFDPassingSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #TestFDPassingSkeleton. 558s # */ 558s # 558s # struct _TestFDPassingSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _test_fdpassing_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_TEST_FDPASSING); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_TEST_FDPASSING); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _test_fdpassing_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _test_fdpassing_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _test_fdpassing_skeleton_vtable = 558s # { 558s # _test_fdpassing_skeleton_handle_method_call, 558s # _test_fdpassing_skeleton_handle_get_property, 558s # _test_fdpassing_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # test_fdpassing_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return test_fdpassing_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # test_fdpassing_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_test_fdpassing_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # test_fdpassing_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_test_fdpassing_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _test_fdpassing_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _test_fdpassing_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _test_fdpassing_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "test.FDPassing", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # test_fdpassing_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void test_fdpassing_skeleton_iface_init (TestFDPassingIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingSkeleton, test_fdpassing_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (TestFDPassingSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingSkeleton, test_fdpassing_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # test_fdpassing_skeleton_finalize (GObject *object) 558s # { 558s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (test_fdpassing_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # test_fdpassing_skeleton_init (TestFDPassingSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = test_fdpassing_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_TEST_FDPASSING_SKELETON, TestFDPassingSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # test_fdpassing_skeleton_class_init (TestFDPassingSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = test_fdpassing_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = test_fdpassing_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = test_fdpassing_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = test_fdpassing_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = test_fdpassing_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (TestFDPassingSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # test_fdpassing_skeleton_iface_init (TestFDPassingIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * test_fdpassing_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface test.FDPassing. 558s # * 558s # * Returns: (transfer full) (type TestFDPassingSkeleton): The skeleton object. 558s # */ 558s # TestFDPassing * 558s # test_fdpassing_skeleton_new (void) 558s # { 558s # return TEST_FDPASSING (g_object_new (TYPE_TEST_FDPASSING_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 15 __main__.TestCodegen.test_generate_rst 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpu09w1a1j 558s # /tmp/tmpu09w1a1j/tmp2v76vfvz.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpu09w1a1j/tmp2v76vfvz.xml', '--generate-rst', 'test'] 558s # Return code: 0 558s # Output: 558s # 558s # Error: 558s ok 16 __main__.TestCodegen.test_generate_rst_method 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmp0k_r589c 558s # /tmp/tmp0k_r589c/tmp7pxmdp9z.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp0k_r589c/tmp7pxmdp9z.xml', '--generate-rst', 'test'] 558s # Return code: 0 558s # Output: 558s # 558s # Error: 558s ok 17 __main__.TestCodegen.test_generate_rst_property 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmppkjkp7zr 558s # /tmp/tmppkjkp7zr/tmpl1gpjc0c.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmppkjkp7zr/tmpl1gpjc0c.xml', '--generate-rst', 'test'] 558s # Return code: 0 558s # Output: 558s # 558s # Error: 558s ok 18 __main__.TestCodegen.test_generate_rst_signal 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpt561_smd 558s # /tmp/tmpt561_smd/tmp9529kync.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpt561_smd/tmp9529kync.xml', '--generate-rst', 'test'] 558s # Return code: 0 558s # Output: 558s # 558s # Error: 558s ok 19 __main__.TestCodegen.test_generate_signal_id_multiple_signal_args_types 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpre02mpx3 558s # /tmp/tmpre02mpx3/tmpcg41m1qe.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpre02mpx3/tmpcg41m1qe.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 558s # GClosure *closure, 558s # GValue *return_value G_GNUC_UNUSED, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef void (*_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 558s # (void *data1, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv, 558s # void *data2); 558s # _GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # 558s # g_return_if_fail (n_param_values == 19); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # callback (data1, 558s # g_marshal_value_peek_boolean (param_values + 1), 558s # g_marshal_value_peek_uchar (param_values + 2), 558s # g_marshal_value_peek_int (param_values + 3), 558s # g_marshal_value_peek_uint (param_values + 4), 558s # g_marshal_value_peek_int (param_values + 5), 558s # g_marshal_value_peek_uint (param_values + 6), 558s # g_marshal_value_peek_int64 (param_values + 7), 558s # g_marshal_value_peek_uint64 (param_values + 8), 558s # g_marshal_value_peek_double (param_values + 9), 558s # g_marshal_value_peek_string (param_values + 10), 558s # g_marshal_value_peek_string (param_values + 11), 558s # g_marshal_value_peek_string (param_values + 12), 558s # g_marshal_value_peek_variant (param_values + 13), 558s # g_marshal_value_peek_string (param_values + 14), 558s # g_marshal_value_peek_boxed (param_values + 15), 558s # g_marshal_value_peek_boxed (param_values + 16), 558s # g_marshal_value_peek_boxed (param_values + 17), 558s # g_marshal_value_peek_variant (param_values + 18), 558s # data2); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.SignalingIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectSignalingIface 558s # * @title: OrgProjectSignalingIface 558s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.SignalingIface ---- */ 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay.parent_struct, 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_signal_with_many_args = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SignalWithManyArgs", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers, 558s # NULL 558s # }, 558s # "signal-with-many-args" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_signal_with_many_args.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.SignalingIface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-signaling-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_signaling_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_signal_with_many_args ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectSignalingIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @signal_with_many_args: Handler for the #OrgProjectSignalingIface::signal-with-many-args signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectSignalingIface::signal-with-many-args: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_b: Argument. 558s # * @arg_an_y: Argument. 558s # * @arg_an_n: Argument. 558s # * @arg_an_q: Argument. 558s # * @arg_an_i: Argument. 558s # * @arg_an_u: Argument. 558s # * @arg_an_x: Argument. 558s # * @arg_an_t: Argument. 558s # * @arg_an_d: Argument. 558s # * @arg_an_s: Argument. 558s # * @arg_an_o: Argument. 558s # * @arg_an_g: Argument. 558s # * @arg_an_h: Argument. 558s # * @arg_an_ay: Argument. 558s # * @arg_an_as: Argument. 558s # * @arg_an_ao: Argument. 558s # * @arg_an_aay: Argument. 558s # * @arg_an_asv: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SignalWithManyArgs" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS] = 558s # g_signal_new ("signal-with-many-args", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, signal_with_many_args), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_signal_with_many_args, 558s # G_TYPE_NONE, 558s # 18, G_TYPE_BOOLEAN, G_TYPE_UCHAR, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT64, G_TYPE_UINT64, G_TYPE_DOUBLE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT, G_TYPE_STRING, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_VARIANT); 558s # 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_signal_with_many_args: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_b: Argument to pass with the signal. 558s # * @arg_an_y: Argument to pass with the signal. 558s # * @arg_an_n: Argument to pass with the signal. 558s # * @arg_an_q: Argument to pass with the signal. 558s # * @arg_an_i: Argument to pass with the signal. 558s # * @arg_an_u: Argument to pass with the signal. 558s # * @arg_an_x: Argument to pass with the signal. 558s # * @arg_an_t: Argument to pass with the signal. 558s # * @arg_an_d: Argument to pass with the signal. 558s # * @arg_an_s: Argument to pass with the signal. 558s # * @arg_an_o: Argument to pass with the signal. 558s # * @arg_an_g: Argument to pass with the signal. 558s # * @arg_an_h: Argument to pass with the signal. 558s # * @arg_an_ay: Argument to pass with the signal. 558s # * @arg_an_as: Argument to pass with the signal. 558s # * @arg_an_ao: Argument to pass with the signal. 558s # * @arg_an_aay: Argument to pass with the signal. 558s # * @arg_an_asv: Argument to pass with the signal. 558s # * 558s # * Emits the "SignalWithManyArgs" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_signal_with_many_args ( 558s # OrgProjectSignalingIface *object, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS], 0, arg_an_b, arg_an_y, arg_an_n, arg_an_q, arg_an_i, arg_an_u, arg_an_x, arg_an_t, arg_an_d, arg_an_s, arg_an_o, arg_an_g, arg_an_h, arg_an_ay, arg_an_as, arg_an_ao, arg_an_aay, arg_an_asv); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxy: 558s # * 558s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeleton: 558s # * 558s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_signaling_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_signaling_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_signaling_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 558s # { 558s # _org_project_signaling_iface_skeleton_handle_method_call, 558s # _org_project_signaling_iface_skeleton_handle_get_property, 558s # _org_project_signaling_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_signaling_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_signal_with_many_args ( 558s # OrgProjectSignalingIface *object, 558s # gboolean arg_an_b, 558s # guchar arg_an_y, 558s # gint16 arg_an_n, 558s # guint16 arg_an_q, 558s # gint arg_an_i, 558s # guint arg_an_u, 558s # gint64 arg_an_x, 558s # guint64 arg_an_t, 558s # gdouble arg_an_d, 558s # const gchar *arg_an_s, 558s # const gchar *arg_an_o, 558s # const gchar *arg_an_g, 558s # GVariant *arg_an_h, 558s # const gchar *arg_an_ay, 558s # const gchar *const *arg_an_as, 558s # const gchar *const *arg_an_ao, 558s # const gchar *const *arg_an_aay, 558s # GVariant *arg_an_asv) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 558s # arg_an_b, 558s # arg_an_y, 558s # arg_an_n, 558s # arg_an_q, 558s # arg_an_i, 558s # arg_an_u, 558s # arg_an_x, 558s # arg_an_t, 558s # arg_an_d, 558s # arg_an_s, 558s # arg_an_o, 558s # arg_an_g, 558s # arg_an_h, 558s # arg_an_ay, 558s # arg_an_as, 558s # arg_an_ao, 558s # arg_an_aay, 558s # arg_an_asv)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SignalWithManyArgs", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # iface->signal_with_many_args = _org_project_signaling_iface_on_signal_signal_with_many_args; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 20 __main__.TestCodegen.test_generate_signal_id_multiple_signals_types 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmpw4m1r0jr 558s # /tmp/tmpw4m1r0jr/tmphga40ddd.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpw4m1r0jr/tmphga40ddd.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_VOID__INT64 ( 558s # GClosure *closure, 558s # GValue *return_value G_GNUC_UNUSED, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef void (*_GDbusCodegenMarshalVoid_Int64Func) 558s # (void *data1, 558s # gint64 arg_an_x, 558s # void *data2); 558s # _GDbusCodegenMarshalVoid_Int64Func callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalVoid_Int64Func) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # callback (data1, 558s # g_marshal_value_peek_int64 (param_values + 1), 558s # data2); 558s # } 558s # 558s # static void 558s # _g_dbus_codegen_marshal_VOID__UINT64 ( 558s # GClosure *closure, 558s # GValue *return_value G_GNUC_UNUSED, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint G_GNUC_UNUSED, 558s # void *marshal_data) 558s # { 558s # typedef void (*_GDbusCodegenMarshalVoid_Uint64Func) 558s # (void *data1, 558s # guint64 arg_an_t, 558s # void *data2); 558s # _GDbusCodegenMarshalVoid_Uint64Func callback; 558s # GCClosure *cc = (GCClosure*) closure; 558s # void *data1, *data2; 558s # 558s # g_return_if_fail (n_param_values == 2); 558s # 558s # if (G_CCLOSURE_SWAP_DATA (closure)) 558s # { 558s # data1 = closure->data; 558s # data2 = g_value_peek_pointer (param_values + 0); 558s # } 558s # else 558s # { 558s # data1 = g_value_peek_pointer (param_values + 0); 558s # data2 = closure->data; 558s # } 558s # 558s # callback = (_GDbusCodegenMarshalVoid_Uint64Func) 558s # (marshal_data ? marshal_data : cc->callback); 558s # 558s # callback (data1, 558s # g_marshal_value_peek_uint64 (param_values + 1), 558s # data2); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.SignalingIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectSignalingIface 558s # * @title: OrgProjectSignalingIface 558s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY, 558s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[19] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.SignalingIface ---- */ 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_no_arg_signal = 558s # { 558s # { 558s # -1, 558s # (gchar *) "NoArgSignal", 558s # NULL, 558s # NULL 558s # }, 558s # "no-arg-signal" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_an_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_b", 558s # (gchar *) "b", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_an_b.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_b = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalB", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-b" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_an_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_y", 558s # (gchar *) "y", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_an_y.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_y = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalY", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-y" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_an_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_n", 558s # (gchar *) "n", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_an_n.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_n = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalN", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-n" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_an_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_q", 558s # (gchar *) "q", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_an_q.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_q = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalQ", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-q" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_an_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_i", 558s # (gchar *) "i", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_an_i.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_i = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalI", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-i" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_an_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_u", 558s # (gchar *) "u", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_an_u.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_u = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalU", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-u" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_an_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_x", 558s # (gchar *) "x", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_an_x.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_x = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalX", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-x" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_an_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_t", 558s # (gchar *) "t", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_an_t.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_t = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalT", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-t" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_an_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_d", 558s # (gchar *) "d", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_an_d.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_d = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalD", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-d" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_an_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_s", 558s # (gchar *) "s", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_an_s.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_s = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalS", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-s" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_an_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_o", 558s # (gchar *) "o", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_an_o.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_o = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalO", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-o" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_an_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_g", 558s # (gchar *) "g", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_an_g.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_g = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalG", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-g" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_an_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_h", 558s # (gchar *) "h", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_an_h.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_h = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalH", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-h" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_an_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ay", 558s # (gchar *) "ay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_an_ay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalAY", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-ay" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_an_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_as", 558s # (gchar *) "as", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_an_as.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_as = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalAS", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-as" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_an_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_ao", 558s # (gchar *) "ao", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_an_ao.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalAO", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-ao" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_an_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_aay", 558s # (gchar *) "aay", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_an_aay.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalAAY", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-aay" 558s # }; 558s # 558s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_an_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "an_asv", 558s # (gchar *) "a{sv}", 558s # NULL 558s # }, 558s # FALSE 558s # }; 558s # 558s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_an_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SingleArgSignalASV", 558s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers, 558s # NULL 558s # }, 558s # "single-arg-signal-asv" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_no_arg_signal.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_b.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_y.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_n.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_q.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_i.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_u.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_x.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_t.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_d.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_s.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_o.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_g.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_h.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_as.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay.parent_struct, 558s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.SignalingIface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-signaling-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_signaling_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_no_arg_signal ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VOID (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_b ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__BOOLEAN (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_y ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__UCHAR (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_n ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__INT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_q ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__UINT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_i ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__INT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_u ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__UINT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_x ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_VOID__INT64 (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_t ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # _g_dbus_codegen_marshal_VOID__UINT64 (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_d ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__DOUBLE (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_s ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__STRING (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_o ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__STRING (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_g ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__STRING (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_h ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__STRING (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_as ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__BOXED (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__BOXED (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__BOXED (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VARIANT (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectSignalingIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @no_arg_signal: Handler for the #OrgProjectSignalingIface::no-arg-signal signal. 558s # * @single_arg_signal_aay: Handler for the #OrgProjectSignalingIface::single-arg-signal-aay signal. 558s # * @single_arg_signal_ao: Handler for the #OrgProjectSignalingIface::single-arg-signal-ao signal. 558s # * @single_arg_signal_as: Handler for the #OrgProjectSignalingIface::single-arg-signal-as signal. 558s # * @single_arg_signal_asv: Handler for the #OrgProjectSignalingIface::single-arg-signal-asv signal. 558s # * @single_arg_signal_ay: Handler for the #OrgProjectSignalingIface::single-arg-signal-ay signal. 558s # * @single_arg_signal_b: Handler for the #OrgProjectSignalingIface::single-arg-signal-b signal. 558s # * @single_arg_signal_d: Handler for the #OrgProjectSignalingIface::single-arg-signal-d signal. 558s # * @single_arg_signal_g: Handler for the #OrgProjectSignalingIface::single-arg-signal-g signal. 558s # * @single_arg_signal_h: Handler for the #OrgProjectSignalingIface::single-arg-signal-h signal. 558s # * @single_arg_signal_i: Handler for the #OrgProjectSignalingIface::single-arg-signal-i signal. 558s # * @single_arg_signal_n: Handler for the #OrgProjectSignalingIface::single-arg-signal-n signal. 558s # * @single_arg_signal_o: Handler for the #OrgProjectSignalingIface::single-arg-signal-o signal. 558s # * @single_arg_signal_q: Handler for the #OrgProjectSignalingIface::single-arg-signal-q signal. 558s # * @single_arg_signal_s: Handler for the #OrgProjectSignalingIface::single-arg-signal-s signal. 558s # * @single_arg_signal_t: Handler for the #OrgProjectSignalingIface::single-arg-signal-t signal. 558s # * @single_arg_signal_u: Handler for the #OrgProjectSignalingIface::single-arg-signal-u signal. 558s # * @single_arg_signal_x: Handler for the #OrgProjectSignalingIface::single-arg-signal-x signal. 558s # * @single_arg_signal_y: Handler for the #OrgProjectSignalingIface::single-arg-signal-y signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectSignalingIface::no-arg-signal: 558s # * @object: A #OrgProjectSignalingIface. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "NoArgSignal" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL] = 558s # g_signal_new ("no-arg-signal", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, no_arg_signal), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_no_arg_signal, 558s # G_TYPE_NONE, 558s # 0); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-b: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_b: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalB" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B] = 558s # g_signal_new ("single-arg-signal-b", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_b), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_b, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_BOOLEAN); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-y: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_y: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalY" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y] = 558s # g_signal_new ("single-arg-signal-y", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_y), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_y, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_UCHAR); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-n: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_n: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalN" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N] = 558s # g_signal_new ("single-arg-signal-n", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_n), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_n, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_INT); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-q: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_q: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalQ" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q] = 558s # g_signal_new ("single-arg-signal-q", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_q), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_q, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_UINT); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-i: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_i: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalI" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I] = 558s # g_signal_new ("single-arg-signal-i", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_i), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_i, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_INT); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-u: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_u: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalU" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U] = 558s # g_signal_new ("single-arg-signal-u", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_u), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_u, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_UINT); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-x: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_x: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalX" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X] = 558s # g_signal_new ("single-arg-signal-x", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_x), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_x, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_INT64); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-t: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_t: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalT" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T] = 558s # g_signal_new ("single-arg-signal-t", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_t), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_t, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_UINT64); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-d: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_d: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalD" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D] = 558s # g_signal_new ("single-arg-signal-d", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_d), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_d, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_DOUBLE); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-s: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_s: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalS" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S] = 558s # g_signal_new ("single-arg-signal-s", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_s), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_s, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRING); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-o: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_o: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalO" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O] = 558s # g_signal_new ("single-arg-signal-o", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_o), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_o, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRING); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-g: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_g: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalG" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G] = 558s # g_signal_new ("single-arg-signal-g", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_g), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_g, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRING); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-h: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_h: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalH" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H] = 558s # g_signal_new ("single-arg-signal-h", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_h), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_h, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_VARIANT); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-ay: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_ay: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAY" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY] = 558s # g_signal_new ("single-arg-signal-ay", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ay), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRING); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-as: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_as: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAS" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS] = 558s # g_signal_new ("single-arg-signal-as", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_as), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_as, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRV); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-ao: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_ao: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAO" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO] = 558s # g_signal_new ("single-arg-signal-ao", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ao), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRV); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-aay: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_aay: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAAY" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY] = 558s # g_signal_new ("single-arg-signal-aay", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_aay), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_STRV); 558s # 558s # /** 558s # * OrgProjectSignalingIface::single-arg-signal-asv: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_asv: Argument. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalASV" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV] = 558s # g_signal_new ("single-arg-signal-asv", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_asv), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv, 558s # G_TYPE_NONE, 558s # 1, G_TYPE_VARIANT); 558s # 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_no_arg_signal: 558s # * @object: A #OrgProjectSignalingIface. 558s # * 558s # * Emits the "NoArgSignal" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_no_arg_signal ( 558s # OrgProjectSignalingIface *object) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL], 0); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_b: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_b: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalB" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_b ( 558s # OrgProjectSignalingIface *object, 558s # gboolean arg_an_b) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B], 0, arg_an_b); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_y: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_y: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalY" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_y ( 558s # OrgProjectSignalingIface *object, 558s # guchar arg_an_y) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y], 0, arg_an_y); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_n: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_n: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalN" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_n ( 558s # OrgProjectSignalingIface *object, 558s # gint16 arg_an_n) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N], 0, arg_an_n); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_q: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_q: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalQ" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_q ( 558s # OrgProjectSignalingIface *object, 558s # guint16 arg_an_q) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q], 0, arg_an_q); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_i: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_i: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalI" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_i ( 558s # OrgProjectSignalingIface *object, 558s # gint arg_an_i) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I], 0, arg_an_i); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_u: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_u: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalU" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_u ( 558s # OrgProjectSignalingIface *object, 558s # guint arg_an_u) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U], 0, arg_an_u); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_x: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_x: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalX" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_x ( 558s # OrgProjectSignalingIface *object, 558s # gint64 arg_an_x) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X], 0, arg_an_x); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_t: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_t: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalT" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_t ( 558s # OrgProjectSignalingIface *object, 558s # guint64 arg_an_t) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T], 0, arg_an_t); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_d: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_d: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalD" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_d ( 558s # OrgProjectSignalingIface *object, 558s # gdouble arg_an_d) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D], 0, arg_an_d); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_s: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_s: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalS" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_s ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_s) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S], 0, arg_an_s); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_o: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_o: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalO" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_o ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_o) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O], 0, arg_an_o); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_g: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_g: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalG" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_g ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_g) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G], 0, arg_an_g); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_h: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_h: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalH" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_h ( 558s # OrgProjectSignalingIface *object, 558s # GVariant *arg_an_h) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H], 0, arg_an_h); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_ay: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_ay: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalAY" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_ay ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_ay) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY], 0, arg_an_ay); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_as: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_as: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalAS" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_as ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_as) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS], 0, arg_an_as); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_ao: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_ao: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalAO" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_ao ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_ao) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO], 0, arg_an_ao); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_aay: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_aay: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalAAY" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_aay ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_aay) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY], 0, arg_an_aay); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_single_arg_signal_asv: 558s # * @object: A #OrgProjectSignalingIface. 558s # * @arg_an_asv: Argument to pass with the signal. 558s # * 558s # * Emits the "SingleArgSignalASV" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_single_arg_signal_asv ( 558s # OrgProjectSignalingIface *object, 558s # GVariant *arg_an_asv) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV], 0, arg_an_asv); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxy: 558s # * 558s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeleton: 558s # * 558s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_signaling_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_signaling_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_signaling_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 558s # { 558s # _org_project_signaling_iface_skeleton_handle_method_call, 558s # _org_project_signaling_iface_skeleton_handle_get_property, 558s # _org_project_signaling_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_signaling_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_no_arg_signal ( 558s # OrgProjectSignalingIface *object) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "NoArgSignal", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_b ( 558s # OrgProjectSignalingIface *object, 558s # gboolean arg_an_b) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(b)", 558s # arg_an_b)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalB", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_y ( 558s # OrgProjectSignalingIface *object, 558s # guchar arg_an_y) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(y)", 558s # arg_an_y)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalY", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_n ( 558s # OrgProjectSignalingIface *object, 558s # gint16 arg_an_n) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(n)", 558s # arg_an_n)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalN", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_q ( 558s # OrgProjectSignalingIface *object, 558s # guint16 arg_an_q) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(q)", 558s # arg_an_q)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalQ", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_i ( 558s # OrgProjectSignalingIface *object, 558s # gint arg_an_i) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(i)", 558s # arg_an_i)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalI", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_u ( 558s # OrgProjectSignalingIface *object, 558s # guint arg_an_u) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(u)", 558s # arg_an_u)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalU", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_x ( 558s # OrgProjectSignalingIface *object, 558s # gint64 arg_an_x) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(x)", 558s # arg_an_x)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalX", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_t ( 558s # OrgProjectSignalingIface *object, 558s # guint64 arg_an_t) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(t)", 558s # arg_an_t)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalT", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_d ( 558s # OrgProjectSignalingIface *object, 558s # gdouble arg_an_d) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(d)", 558s # arg_an_d)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalD", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_s ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_s) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(s)", 558s # arg_an_s)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalS", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_o ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_o) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(o)", 558s # arg_an_o)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalO", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_g ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_g) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(g)", 558s # arg_an_g)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalG", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_h ( 558s # OrgProjectSignalingIface *object, 558s # GVariant *arg_an_h) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(@h)", 558s # arg_an_h)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalH", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_ay ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *arg_an_ay) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ay)", 558s # arg_an_ay)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAY", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_as ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_as) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(^as)", 558s # arg_an_as)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAS", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_ao ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_ao) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ao)", 558s # arg_an_ao)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAO", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_aay ( 558s # OrgProjectSignalingIface *object, 558s # const gchar *const *arg_an_aay) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(^aay)", 558s # arg_an_aay)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAAY", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_single_arg_signal_asv ( 558s # OrgProjectSignalingIface *object, 558s # GVariant *arg_an_asv) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("(@a{sv})", 558s # arg_an_asv)); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalASV", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # iface->no_arg_signal = _org_project_signaling_iface_on_signal_no_arg_signal; 558s # iface->single_arg_signal_b = _org_project_signaling_iface_on_signal_single_arg_signal_b; 558s # iface->single_arg_signal_y = _org_project_signaling_iface_on_signal_single_arg_signal_y; 558s # iface->single_arg_signal_n = _org_project_signaling_iface_on_signal_single_arg_signal_n; 558s # iface->single_arg_signal_q = _org_project_signaling_iface_on_signal_single_arg_signal_q; 558s # iface->single_arg_signal_i = _org_project_signaling_iface_on_signal_single_arg_signal_i; 558s # iface->single_arg_signal_u = _org_project_signaling_iface_on_signal_single_arg_signal_u; 558s # iface->single_arg_signal_x = _org_project_signaling_iface_on_signal_single_arg_signal_x; 558s # iface->single_arg_signal_t = _org_project_signaling_iface_on_signal_single_arg_signal_t; 558s # iface->single_arg_signal_d = _org_project_signaling_iface_on_signal_single_arg_signal_d; 558s # iface->single_arg_signal_s = _org_project_signaling_iface_on_signal_single_arg_signal_s; 558s # iface->single_arg_signal_o = _org_project_signaling_iface_on_signal_single_arg_signal_o; 558s # iface->single_arg_signal_g = _org_project_signaling_iface_on_signal_single_arg_signal_g; 558s # iface->single_arg_signal_h = _org_project_signaling_iface_on_signal_single_arg_signal_h; 558s # iface->single_arg_signal_ay = _org_project_signaling_iface_on_signal_single_arg_signal_ay; 558s # iface->single_arg_signal_as = _org_project_signaling_iface_on_signal_single_arg_signal_as; 558s # iface->single_arg_signal_ao = _org_project_signaling_iface_on_signal_single_arg_signal_ao; 558s # iface->single_arg_signal_aay = _org_project_signaling_iface_on_signal_single_arg_signal_aay; 558s # iface->single_arg_signal_asv = _org_project_signaling_iface_on_signal_single_arg_signal_asv; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 21 __main__.TestCodegen.test_generate_signal_id_simple_signal 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmp15one8sq 558s # /tmp/tmp15one8sq/tmp986c3gpl.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp15one8sq/tmp986c3gpl.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.UsefulInterface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectUsefulInterface 558s # * @title: OrgProjectUsefulInterface 558s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[1] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_useful_interface_signal_info_simple_signal = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SimpleSignal", 558s # NULL, 558s # NULL 558s # }, 558s # "simple-signal" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_useful_interface_signal_info_pointers[] = 558s # { 558s # &_org_project_useful_interface_signal_info_simple_signal.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.UsefulInterface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_useful_interface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-useful-interface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_useful_interface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_useful_interface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_useful_interface_signal_marshal_simple_signal ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VOID (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectUsefulInterface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @simple_signal: Handler for the #OrgProjectUsefulInterface::simple-signal signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 558s # */ 558s # 558s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectUsefulInterface::simple-signal: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[_ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL] = 558s # g_signal_new ("simple-signal", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, simple_signal), 558s # NULL, 558s # NULL, 558s # org_project_useful_interface_signal_marshal_simple_signal, 558s # G_TYPE_NONE, 558s # 0); 558s # 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_emit_simple_signal: 558s # * @object: A #OrgProjectUsefulInterface. 558s # * 558s # * Emits the "SimpleSignal" D-Bus signal. 558s # */ 558s # void 558s # org_project_useful_interface_emit_simple_signal ( 558s # OrgProjectUsefulInterface *object) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[_ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL], 0); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxy: 558s # * 558s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 558s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 558s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_useful_interface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.UsefulInterface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeleton: 558s # * 558s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectUsefulInterfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_useful_interface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_useful_interface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_useful_interface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 558s # { 558s # _org_project_useful_interface_skeleton_handle_method_call, 558s # _org_project_useful_interface_skeleton_handle_get_property, 558s # _org_project_useful_interface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_useful_interface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_useful_interface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_useful_interface_on_signal_simple_signal ( 558s # OrgProjectUsefulInterface *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", "SimpleSignal", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_useful_interface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface) 558s # { 558s # iface->simple_signal = _org_project_useful_interface_on_signal_simple_signal; 558s # } 558s # 558s # /** 558s # * org_project_useful_interface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectUsefulInterface * 558s # org_project_useful_interface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.OtherIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectOtherIface 558s # * @title: OrgProjectOtherIface 558s # * @short_description: Generated C code for the org.project.OtherIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.OtherIface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_OTHER_IFACE_SIGNALS[1] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.OtherIface ---- */ 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_other_iface_signal_info_simple_signal = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SimpleSignal", 558s # NULL, 558s # NULL 558s # }, 558s # "simple-signal" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_other_iface_signal_info_pointers[] = 558s # { 558s # &_org_project_other_iface_signal_info_simple_signal.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_other_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.OtherIface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_other_iface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-other-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_other_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.OtherIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_other_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_other_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectOtherIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_other_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_other_iface_signal_marshal_simple_signal ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VOID (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectOtherIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.OtherIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @simple_signal: Handler for the #OrgProjectOtherIface::simple-signal signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.OtherIface. 558s # */ 558s # 558s # typedef OrgProjectOtherIfaceIface OrgProjectOtherIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectOtherIface, org_project_other_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_other_iface_default_init (OrgProjectOtherIfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectOtherIface::simple-signal: 558s # * @object: A #OrgProjectOtherIface. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_OTHER_IFACE_SIGNALS[_ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL] = 558s # g_signal_new ("simple-signal", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectOtherIfaceIface, simple_signal), 558s # NULL, 558s # NULL, 558s # org_project_other_iface_signal_marshal_simple_signal, 558s # G_TYPE_NONE, 558s # 0); 558s # 558s # } 558s # 558s # /** 558s # * org_project_other_iface_emit_simple_signal: 558s # * @object: A #OrgProjectOtherIface. 558s # * 558s # * Emits the "SimpleSignal" D-Bus signal. 558s # */ 558s # void 558s # org_project_other_iface_emit_simple_signal ( 558s # OrgProjectOtherIface *object) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_OTHER_IFACE_SIGNALS[_ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL], 0); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherIfaceProxy: 558s # * 558s # * The #OrgProjectOtherIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectOtherIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_other_iface_proxy_iface_init (OrgProjectOtherIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceProxy, org_project_other_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectOtherIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceProxy, org_project_other_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectOtherIfaceProxy *proxy = ORG_PROJECT_OTHER_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_other_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectOtherIfaceProxy *proxy = ORG_PROJECT_OTHER_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_init (OrgProjectOtherIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_other_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, OrgProjectOtherIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_class_init (OrgProjectOtherIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_other_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_other_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_other_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_other_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_iface_proxy_iface_init (OrgProjectOtherIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_other_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherIface * 558s # org_project_other_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherIface * 558s # org_project_other_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_other_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_other_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherIface * 558s # org_project_other_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_other_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherIface * 558s # org_project_other_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherIfaceSkeleton: 558s # * 558s # * The #OrgProjectOtherIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectOtherIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_other_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_other_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_other_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_other_iface_skeleton_vtable = 558s # { 558s # _org_project_other_iface_skeleton_handle_method_call, 558s # _org_project_other_iface_skeleton_handle_get_property, 558s # _org_project_other_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_other_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_other_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_other_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_other_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_other_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_other_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_other_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_other_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_other_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_other_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_other_iface_on_signal_simple_signal ( 558s # OrgProjectOtherIface *object) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherIface", "SimpleSignal", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_other_iface_skeleton_iface_init (OrgProjectOtherIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceSkeleton, org_project_other_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectOtherIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceSkeleton, org_project_other_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_other_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_iface_skeleton_init (OrgProjectOtherIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_other_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_IFACE_SKELETON, OrgProjectOtherIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_other_iface_skeleton_class_init (OrgProjectOtherIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_other_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_other_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_other_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_other_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_iface_skeleton_iface_init (OrgProjectOtherIfaceIface *iface) 558s # { 558s # iface->simple_signal = _org_project_other_iface_on_signal_simple_signal; 558s # } 558s # 558s # /** 558s # * org_project_other_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.OtherIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectOtherIface * 558s # org_project_other_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_OTHER_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 558s ok 22 __main__.TestCodegen.test_generate_signals_marshaller_simple_signal 558s # gdbus-codegen: /usr/bin/gdbus-codegen 558s # tmpdir: /tmp/tmp_zdph7h6 558s # /tmp/tmp_zdph7h6/tmp_n_cpuin.xml: 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # 558s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_zdph7h6/tmp_n_cpuin.xml', '--output', '-', '--body'] 558s # Return code: 0 558s # Output: 558s # /* 558s # * This file is generated by gdbus-codegen, do not modify it. 558s # * 558s # * The license of this code is the same as for the D-Bus interface description 558s # * it was derived from. Note that it links to GLib, so must comply with the 558s # * LGPL linking clauses. 558s # */ 558s # 558s # #ifdef HAVE_CONFIG_H 558s # # include "config.h" 558s # #endif 558s # 558s # #include 558s # #ifdef G_OS_UNIX 558s # # include 558s # #endif 558s # 558s # #ifdef G_ENABLE_DEBUG 558s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 558s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 558s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 558s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 558s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 558s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 558s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 558s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 558s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 558s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 558s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 558s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 558s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 558s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 558s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 558s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 558s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 558s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 558s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 558s # #else /* !G_ENABLE_DEBUG */ 558s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 558s # * Do not access GValues directly in your code. Instead, use the 558s # * g_value_get_*() functions 558s # */ 558s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 558s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 558s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 558s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 558s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 558s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 558s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 558s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 558s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 558s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 558s # #endif /* !G_ENABLE_DEBUG */ 558s # 558s # typedef struct 558s # { 558s # GDBusArgInfo parent_struct; 558s # gboolean use_gvariant; 558s # } _ExtendedGDBusArgInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusMethodInfo parent_struct; 558s # const gchar *signal_name; 558s # gboolean pass_fdlist; 558s # } _ExtendedGDBusMethodInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusSignalInfo parent_struct; 558s # const gchar *signal_name; 558s # } _ExtendedGDBusSignalInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusPropertyInfo parent_struct; 558s # const gchar *hyphen_name; 558s # guint use_gvariant : 1; 558s # guint emits_changed_signal : 1; 558s # } _ExtendedGDBusPropertyInfo; 558s # 558s # typedef struct 558s # { 558s # GDBusInterfaceInfo parent_struct; 558s # const gchar *hyphen_name; 558s # } _ExtendedGDBusInterfaceInfo; 558s # 558s # typedef struct 558s # { 558s # const _ExtendedGDBusPropertyInfo *info; 558s # guint prop_id; 558s # GValue orig_value; /* the value before the change */ 558s # } ChangedProperty; 558s # 558s # static void 558s # _changed_property_free (ChangedProperty *data) 558s # { 558s # g_value_unset (&data->orig_value); 558s # g_free (data); 558s # } 558s # 558s # static gboolean 558s # _g_strv_equal0 (gchar **a, gchar **b) 558s # { 558s # gboolean ret = FALSE; 558s # guint n; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # if (g_strv_length (a) != g_strv_length (b)) 558s # goto out; 558s # for (n = 0; a[n] != NULL; n++) 558s # if (g_strcmp0 (a[n], b[n]) != 0) 558s # goto out; 558s # ret = TRUE; 558s # out: 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _g_variant_equal0 (GVariant *a, GVariant *b) 558s # { 558s # gboolean ret = FALSE; 558s # if (a == NULL && b == NULL) 558s # { 558s # ret = TRUE; 558s # goto out; 558s # } 558s # if (a == NULL || b == NULL) 558s # goto out; 558s # ret = g_variant_equal (a, b); 558s # out: 558s # return ret; 558s # } 558s # 558s # G_GNUC_UNUSED static gboolean 558s # _g_value_equal (const GValue *a, const GValue *b) 558s # { 558s # gboolean ret = FALSE; 558s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 558s # switch (G_VALUE_TYPE (a)) 558s # { 558s # case G_TYPE_BOOLEAN: 558s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 558s # break; 558s # case G_TYPE_UCHAR: 558s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 558s # break; 558s # case G_TYPE_INT: 558s # ret = (g_value_get_int (a) == g_value_get_int (b)); 558s # break; 558s # case G_TYPE_UINT: 558s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 558s # break; 558s # case G_TYPE_INT64: 558s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 558s # break; 558s # case G_TYPE_UINT64: 558s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 558s # break; 558s # case G_TYPE_DOUBLE: 558s # { 558s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 558s # gdouble da = g_value_get_double (a); 558s # gdouble db = g_value_get_double (b); 558s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 558s # } 558s # break; 558s # case G_TYPE_STRING: 558s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 558s # break; 558s # case G_TYPE_VARIANT: 558s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 558s # break; 558s # default: 558s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 558s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 558s # else 558s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 558s # break; 558s # } 558s # return ret; 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.SignalingIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectSignalingIface 558s # * @title: OrgProjectSignalingIface 558s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.SignalingIface ---- */ 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SimpleSignal", 558s # NULL, 558s # NULL 558s # }, 558s # "simple-signal" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 558s # { 558s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.SignalingIface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-signaling-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_signaling_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_signaling_iface_signal_marshal_simple_signal ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VOID (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectSignalingIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.SignalingIface. 558s # */ 558s # 558s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectSignalingIface::simple-signal: 558s # * @object: A #OrgProjectSignalingIface. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 558s # g_signal_new ("simple-signal", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 558s # NULL, 558s # NULL, 558s # org_project_signaling_iface_signal_marshal_simple_signal, 558s # G_TYPE_NONE, 558s # 0); 558s # 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_emit_simple_signal: 558s # * @object: A #OrgProjectSignalingIface. 558s # * 558s # * Emits the "SimpleSignal" D-Bus signal. 558s # */ 558s # void 558s # org_project_signaling_iface_emit_simple_signal ( 558s # OrgProjectSignalingIface *object) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxy: 558s # * 558s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_signaling_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeleton: 558s # * 558s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectSignalingIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectSignalingIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_signaling_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_signaling_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_signaling_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 558s # { 558s # _org_project_signaling_iface_skeleton_handle_method_call, 558s # _org_project_signaling_iface_skeleton_handle_get_property, 558s # _org_project_signaling_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_signaling_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_signaling_iface_on_signal_simple_signal ( 558s # OrgProjectSignalingIface *object) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_signaling_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 558s # { 558s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 558s # } 558s # 558s # /** 558s # * org_project_signaling_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectSignalingIface * 558s # org_project_signaling_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ 558s # * Code for interface org.project.OtherSignalingIface 558s # * ------------------------------------------------------------------------ 558s # */ 558s # 558s # /** 558s # * SECTION:OrgProjectOtherSignalingIface 558s # * @title: OrgProjectOtherSignalingIface 558s # * @short_description: Generated C code for the org.project.OtherSignalingIface D-Bus interface 558s # * 558s # * This section contains code for working with the org.project.OtherSignalingIface D-Bus interface in C. 558s # */ 558s # 558s # enum 558s # { 558s # _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL, 558s # }; 558s # 558s # static unsigned _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 558s # 558s # /* ---- Introspection data for org.project.OtherSignalingIface ---- */ 558s # 558s # static const _ExtendedGDBusSignalInfo _org_project_other_signaling_iface_signal_info_simple_signal = 558s # { 558s # { 558s # -1, 558s # (gchar *) "SimpleSignal", 558s # NULL, 558s # NULL 558s # }, 558s # "simple-signal" 558s # }; 558s # 558s # static const GDBusSignalInfo * const _org_project_other_signaling_iface_signal_info_pointers[] = 558s # { 558s # &_org_project_other_signaling_iface_signal_info_simple_signal.parent_struct, 558s # NULL 558s # }; 558s # 558s # static const _ExtendedGDBusInterfaceInfo _org_project_other_signaling_iface_interface_info = 558s # { 558s # { 558s # -1, 558s # (gchar *) "org.project.OtherSignalingIface", 558s # NULL, 558s # (GDBusSignalInfo **) &_org_project_other_signaling_iface_signal_info_pointers, 558s # NULL, 558s # NULL 558s # }, 558s # "org-project-other-signaling-iface", 558s # }; 558s # 558s # 558s # /** 558s # * org_project_other_signaling_iface_interface_info: 558s # * 558s # * Gets a machine-readable description of the org.project.OtherSignalingIface D-Bus interface. 558s # * 558s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 558s # */ 558s # GDBusInterfaceInfo * 558s # org_project_other_signaling_iface_interface_info (void) 558s # { 558s # return (GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct; 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_override_properties: 558s # * @klass: The class structure for a #GObject derived class. 558s # * @property_id_begin: The property id to assign to the first overridden property. 558s # * 558s # * Overrides all #GObject properties in the #OrgProjectOtherSignalingIface interface for a concrete class. 558s # * The properties are overridden in the order they are defined. 558s # * 558s # * Returns: The last property id. 558s # */ 558s # guint 558s # org_project_other_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 558s # { 558s # return property_id_begin - 1; 558s # } 558s # 558s # 558s # inline static void 558s # org_project_other_signaling_iface_signal_marshal_simple_signal ( 558s # GClosure *closure, 558s # GValue *return_value, 558s # unsigned int n_param_values, 558s # const GValue *param_values, 558s # void *invocation_hint, 558s # void *marshal_data) 558s # { 558s # g_cclosure_marshal_VOID__VOID (closure, 558s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 558s # } 558s # 558s # 558s # /** 558s # * OrgProjectOtherSignalingIface: 558s # * 558s # * Abstract interface type for the D-Bus interface org.project.OtherSignalingIface. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherSignalingIfaceIface: 558s # * @parent_iface: The parent interface. 558s # * @simple_signal: Handler for the #OrgProjectOtherSignalingIface::simple-signal signal. 558s # * 558s # * Virtual table for the D-Bus interface org.project.OtherSignalingIface. 558s # */ 558s # 558s # typedef OrgProjectOtherSignalingIfaceIface OrgProjectOtherSignalingIfaceInterface; 558s # G_DEFINE_INTERFACE (OrgProjectOtherSignalingIface, org_project_other_signaling_iface, G_TYPE_OBJECT) 558s # 558s # static void 558s # org_project_other_signaling_iface_default_init (OrgProjectOtherSignalingIfaceIface *iface) 558s # { 558s # /* GObject signals for received D-Bus signals: */ 558s # /** 558s # * OrgProjectOtherSignalingIface::simple-signal: 558s # * @object: A #OrgProjectOtherSignalingIface. 558s # * 558s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 558s # * 558s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 558s # */ 558s # _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL] = 558s # g_signal_new ("simple-signal", 558s # G_TYPE_FROM_INTERFACE (iface), 558s # G_SIGNAL_RUN_LAST, 558s # G_STRUCT_OFFSET (OrgProjectOtherSignalingIfaceIface, simple_signal), 558s # NULL, 558s # NULL, 558s # org_project_other_signaling_iface_signal_marshal_simple_signal, 558s # G_TYPE_NONE, 558s # 0); 558s # 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_emit_simple_signal: 558s # * @object: A #OrgProjectOtherSignalingIface. 558s # * 558s # * Emits the "SimpleSignal" D-Bus signal. 558s # */ 558s # void 558s # org_project_other_signaling_iface_emit_simple_signal ( 558s # OrgProjectOtherSignalingIface *object) 558s # { 558s # g_signal_emit (object, _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 558s # } 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherSignalingIfaceProxy: 558s # * 558s # * The #OrgProjectOtherSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherSignalingIfaceProxyClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherSignalingIfaceProxy. 558s # */ 558s # 558s # struct _OrgProjectOtherSignalingIfaceProxyPrivate 558s # { 558s # GData *qdata; 558s # }; 558s # 558s # static void org_project_other_signaling_iface_proxy_iface_init (OrgProjectOtherSignalingIfaceIface *iface); 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceProxy, org_project_other_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_ADD_PRIVATE (OrgProjectOtherSignalingIfaceProxy) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_proxy_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceProxy, org_project_other_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_proxy_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_signaling_iface_proxy_finalize (GObject *object) 558s # { 558s # OrgProjectOtherSignalingIfaceProxy *proxy = ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY (object); 558s # g_datalist_clear (&proxy->priv->qdata); 558s # G_OBJECT_CLASS (org_project_other_signaling_iface_proxy_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 558s # guint prop_id G_GNUC_UNUSED, 558s # const GValue *value G_GNUC_UNUSED, 558s # GParamSpec *pspec G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 558s # const gchar *sender_name G_GNUC_UNUSED, 558s # const gchar *signal_name, 558s # GVariant *parameters) 558s # { 558s # _ExtendedGDBusSignalInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # gsize n; 558s # guint signal_id; 558s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, signal_name); 558s # if (info == NULL) 558s # return; 558s # num_params = g_variant_n_children (parameters); 558s # paramv = g_new0 (GValue, num_params + 1); 558s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[0], proxy); 558s # g_variant_iter_init (&iter, parameters); 558s # n = 1; 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 558s # g_signal_emitv (paramv, signal_id, 0, NULL); 558s # for (n = 0; n < num_params + 1; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 558s # GVariant *changed_properties, 558s # const gchar *const *invalidated_properties) 558s # { 558s # OrgProjectOtherSignalingIfaceProxy *proxy = ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY (_proxy); 558s # guint n; 558s # const gchar *key; 558s # GVariantIter *iter; 558s # _ExtendedGDBusPropertyInfo *info; 558s # g_variant_get (changed_properties, "a{sv}", &iter); 558s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, key); 558s # g_datalist_remove_data (&proxy->priv->qdata, key); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # g_variant_iter_free (iter); 558s # for (n = 0; invalidated_properties[n] != NULL; n++) 558s # { 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 558s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 558s # if (info != NULL) 558s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 558s # } 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_init (OrgProjectOtherSignalingIfaceProxy *proxy) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # proxy->priv = org_project_other_signaling_iface_proxy_get_instance_private (proxy); 558s # #else 558s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, OrgProjectOtherSignalingIfaceProxyPrivate); 558s # #endif 558s # 558s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_signaling_iface_interface_info ()); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_class_init (OrgProjectOtherSignalingIfaceProxyClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusProxyClass *proxy_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_signaling_iface_proxy_finalize; 558s # gobject_class->get_property = org_project_other_signaling_iface_proxy_get_property; 558s # gobject_class->set_property = org_project_other_signaling_iface_proxy_set_property; 558s # 558s # proxy_class = G_DBUS_PROXY_CLASS (klass); 558s # proxy_class->g_signal = org_project_other_signaling_iface_proxy_g_signal; 558s # proxy_class->g_properties_changed = org_project_other_signaling_iface_proxy_g_properties_changed; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherSignalingIfaceProxyPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_proxy_iface_init (OrgProjectOtherSignalingIfaceIface *iface G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherSignalingIface. See g_dbus_proxy_new() for more details. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_signaling_iface_proxy_new_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_signaling_iface_proxy_new ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherSignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_signaling_iface_proxy_new(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_signaling_iface_proxy_new(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherSignalingIface * 558s # org_project_other_signaling_iface_proxy_new_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new_sync: 558s # * @connection: A #GDBusConnection. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherSignalingIface. See g_dbus_proxy_new_sync() for more details. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_signaling_iface_proxy_new() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherSignalingIface * 558s # org_project_other_signaling_iface_proxy_new_sync ( 558s # GDBusConnection *connection, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.OtherSignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new_for_bus: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 558s # * @user_data: User data to pass to @callback. 558s # * 558s # * Like org_project_other_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 558s # * You can then call org_project_other_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 558s # * 558s # * See org_project_other_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 558s # */ 558s # void 558s # org_project_other_signaling_iface_proxy_new_for_bus ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GAsyncReadyCallback callback, 558s # gpointer user_data) 558s # { 558s # g_async_initable_new_async (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherSignalingIface", NULL); 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new_for_bus_finish: 558s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_signaling_iface_proxy_new_for_bus(). 558s # * @error: Return location for error or %NULL 558s # * 558s # * Finishes an operation started with org_project_other_signaling_iface_proxy_new_for_bus(). 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherSignalingIface * 558s # org_project_other_signaling_iface_proxy_new_for_bus_finish ( 558s # GAsyncResult *res, 558s # GError **error) 558s # { 558s # GObject *ret; 558s # GObject *source_object; 558s # source_object = g_async_result_get_source_object (res); 558s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 558s # g_object_unref (source_object); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_proxy_new_for_bus_sync: 558s # * @bus_type: A #GBusType. 558s # * @flags: Flags from the #GDBusProxyFlags enumeration. 558s # * @name: A bus name (well-known or unique). 558s # * @object_path: An object path. 558s # * @cancellable: (nullable): A #GCancellable or %NULL. 558s # * @error: Return location for error or %NULL 558s # * 558s # * Like org_project_other_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 558s # * 558s # * The calling thread is blocked until a reply is received. 558s # * 558s # * See org_project_other_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 558s # */ 558s # OrgProjectOtherSignalingIface * 558s # org_project_other_signaling_iface_proxy_new_for_bus_sync ( 558s # GBusType bus_type, 558s # GDBusProxyFlags flags, 558s # const gchar *name, 558s # const gchar *object_path, 558s # GCancellable *cancellable, 558s # GError **error) 558s # { 558s # GInitable *ret; 558s # ret = g_initable_new (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.OtherSignalingIface", NULL); 558s # if (ret != NULL) 558s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 558s # else 558s # return NULL; 558s # } 558s # 558s # 558s # /* ------------------------------------------------------------------------ */ 558s # 558s # /** 558s # * OrgProjectOtherSignalingIfaceSkeleton: 558s # * 558s # * The #OrgProjectOtherSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 558s # */ 558s # 558s # /** 558s # * OrgProjectOtherSignalingIfaceSkeletonClass: 558s # * @parent_class: The parent class. 558s # * 558s # * Class structure for #OrgProjectOtherSignalingIfaceSkeleton. 558s # */ 558s # 558s # struct _OrgProjectOtherSignalingIfaceSkeletonPrivate 558s # { 558s # GValue *properties; 558s # GList *changed_properties; 558s # GSource *changed_properties_idle_source; 558s # GMainContext *context; 558s # GMutex lock; 558s # }; 558s # 558s # static void 558s # _org_project_other_signaling_iface_skeleton_handle_method_call ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name, 558s # const gchar *method_name, 558s # GVariant *parameters, 558s # GDBusMethodInvocation *invocation, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 558s # _ExtendedGDBusMethodInfo *info; 558s # GVariantIter iter; 558s # GVariant *child; 558s # GValue *paramv; 558s # gsize num_params; 558s # guint num_extra; 558s # gsize n; 558s # guint signal_id; 558s # GValue return_value = G_VALUE_INIT; 558s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 558s # g_assert (info != NULL); 558s # num_params = g_variant_n_children (parameters); 558s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 558s # n = 0; 558s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 558s # g_value_set_object (¶mv[n++], skeleton); 558s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 558s # g_value_set_object (¶mv[n++], invocation); 558s # if (info->pass_fdlist) 558s # { 558s # #ifdef G_OS_UNIX 558s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 558s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 558s # #else 558s # g_assert_not_reached (); 558s # #endif 558s # } 558s # g_variant_iter_init (&iter, parameters); 558s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 558s # { 558s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 558s # if (arg_info->use_gvariant) 558s # { 558s # g_value_init (¶mv[n], G_TYPE_VARIANT); 558s # g_value_set_variant (¶mv[n], child); 558s # n++; 558s # } 558s # else 558s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 558s # g_variant_unref (child); 558s # } 558s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 558s # g_value_init (&return_value, G_TYPE_BOOLEAN); 558s # g_signal_emitv (paramv, signal_id, 0, &return_value); 558s # if (!g_value_get_boolean (&return_value)) 558s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 558s # g_value_unset (&return_value); 558s # for (n = 0; n < num_params + num_extra; n++) 558s # g_value_unset (¶mv[n]); 558s # g_free (paramv); 558s # } 558s # 558s # static GVariant * 558s # _org_project_other_signaling_iface_skeleton_handle_get_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # GVariant *ret; 558s # ret = NULL; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # g_value_init (&value, pspec->value_type); 558s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 558s # g_value_unset (&value); 558s # } 558s # return ret; 558s # } 558s # 558s # static gboolean 558s # _org_project_other_signaling_iface_skeleton_handle_set_property ( 558s # GDBusConnection *connection G_GNUC_UNUSED, 558s # const gchar *sender G_GNUC_UNUSED, 558s # const gchar *object_path G_GNUC_UNUSED, 558s # const gchar *interface_name G_GNUC_UNUSED, 558s # const gchar *property_name, 558s # GVariant *variant, 558s # GError **error, 558s # gpointer user_data) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 558s # GValue value = G_VALUE_INIT; 558s # GParamSpec *pspec; 558s # _ExtendedGDBusPropertyInfo *info; 558s # gboolean ret; 558s # ret = FALSE; 558s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, property_name); 558s # g_assert (info != NULL); 558s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 558s # if (pspec == NULL) 558s # { 558s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 558s # } 558s # else 558s # { 558s # if (info->use_gvariant) 558s # g_value_set_variant (&value, variant); 558s # else 558s # g_dbus_gvariant_to_gvalue (variant, &value); 558s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 558s # g_value_unset (&value); 558s # ret = TRUE; 558s # } 558s # return ret; 558s # } 558s # 558s # static const GDBusInterfaceVTable _org_project_other_signaling_iface_skeleton_vtable = 558s # { 558s # _org_project_other_signaling_iface_skeleton_handle_method_call, 558s # _org_project_other_signaling_iface_skeleton_handle_get_property, 558s # _org_project_other_signaling_iface_skeleton_handle_set_property, 558s # {NULL} 558s # }; 558s # 558s # static GDBusInterfaceInfo * 558s # org_project_other_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return org_project_other_signaling_iface_interface_info (); 558s # } 558s # 558s # static GDBusInterfaceVTable * 558s # org_project_other_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 558s # { 558s # return (GDBusInterfaceVTable *) &_org_project_other_signaling_iface_skeleton_vtable; 558s # } 558s # 558s # static GVariant * 558s # org_project_other_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (_skeleton); 558s # 558s # GVariantBuilder builder; 558s # guint n; 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 558s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #else 558s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 558s # #endif 558s # if (_org_project_other_signaling_iface_interface_info.parent_struct.properties == NULL) 558s # goto out; 558s # for (n = 0; _org_project_other_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 558s # { 558s # GDBusPropertyInfo *info = _org_project_other_signaling_iface_interface_info.parent_struct.properties[n]; 558s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 558s # { 558s # GVariant *value; 558s # value = _org_project_other_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherSignalingIface", info->name, NULL, skeleton); 558s # if (value != NULL) 558s # { 558s # g_variant_take_ref (value); 558s # g_variant_builder_add (&builder, "{sv}", info->name, value); 558s # g_variant_unref (value); 558s # } 558s # } 558s # } 558s # out: 558s # return g_variant_builder_end (&builder); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 558s # { 558s # } 558s # 558s # static void 558s # _org_project_other_signaling_iface_on_signal_simple_signal ( 558s # OrgProjectOtherSignalingIface *object) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (object); 558s # 558s # GList *connections, *l; 558s # GVariant *signal_variant; 558s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 558s # 558s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 558s # for (l = connections; l != NULL; l = l->next) 558s # { 558s # GDBusConnection *connection = l->data; 558s # g_dbus_connection_emit_signal (connection, 558s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherSignalingIface", "SimpleSignal", 558s # signal_variant, NULL); 558s # } 558s # g_variant_unref (signal_variant); 558s # g_list_free_full (connections, g_object_unref); 558s # } 558s # 558s # static void org_project_other_signaling_iface_skeleton_iface_init (OrgProjectOtherSignalingIfaceIface *iface); 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceSkeleton, org_project_other_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_ADD_PRIVATE (OrgProjectOtherSignalingIfaceSkeleton) 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_skeleton_iface_init)) 558s # 558s # #else 558s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceSkeleton, org_project_other_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 558s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_skeleton_iface_init)) 558s # 558s # #endif 558s # static void 558s # org_project_other_signaling_iface_skeleton_finalize (GObject *object) 558s # { 558s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (object); 558s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 558s # if (skeleton->priv->changed_properties_idle_source != NULL) 558s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 558s # g_main_context_unref (skeleton->priv->context); 558s # g_mutex_clear (&skeleton->priv->lock); 558s # G_OBJECT_CLASS (org_project_other_signaling_iface_skeleton_parent_class)->finalize (object); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_skeleton_init (OrgProjectOtherSignalingIfaceSkeleton *skeleton) 558s # { 558s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 558s # skeleton->priv = org_project_other_signaling_iface_skeleton_get_instance_private (skeleton); 558s # #else 558s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON, OrgProjectOtherSignalingIfaceSkeletonPrivate); 558s # #endif 558s # 558s # g_mutex_init (&skeleton->priv->lock); 558s # skeleton->priv->context = g_main_context_ref_thread_default (); 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_skeleton_class_init (OrgProjectOtherSignalingIfaceSkeletonClass *klass) 558s # { 558s # GObjectClass *gobject_class; 558s # GDBusInterfaceSkeletonClass *skeleton_class; 558s # 558s # gobject_class = G_OBJECT_CLASS (klass); 558s # gobject_class->finalize = org_project_other_signaling_iface_skeleton_finalize; 558s # 558s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 558s # skeleton_class->get_info = org_project_other_signaling_iface_skeleton_dbus_interface_get_info; 558s # skeleton_class->get_properties = org_project_other_signaling_iface_skeleton_dbus_interface_get_properties; 558s # skeleton_class->flush = org_project_other_signaling_iface_skeleton_dbus_interface_flush; 558s # skeleton_class->get_vtable = org_project_other_signaling_iface_skeleton_dbus_interface_get_vtable; 558s # 558s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 558s # g_type_class_add_private (klass, sizeof (OrgProjectOtherSignalingIfaceSkeletonPrivate)); 558s # #endif 558s # } 558s # 558s # static void 558s # org_project_other_signaling_iface_skeleton_iface_init (OrgProjectOtherSignalingIfaceIface *iface) 558s # { 558s # iface->simple_signal = _org_project_other_signaling_iface_on_signal_simple_signal; 558s # } 558s # 558s # /** 558s # * org_project_other_signaling_iface_skeleton_new: 558s # * 558s # * Creates a skeleton object for the D-Bus interface org.project.OtherSignalingIface. 558s # * 558s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceSkeleton): The skeleton object. 558s # */ 558s # OrgProjectOtherSignalingIface * 558s # org_project_other_signaling_iface_skeleton_new (void) 558s # { 558s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON, NULL)); 558s # } 558s # Error: 559s ok 23 __main__.TestCodegen.test_generate_signals_marshaller_single_typed_args 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpepfkerz6 559s # /tmp/tmpepfkerz6/tmpqqrne4gc.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpqqrne4gc.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_arg_b = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_b", 559s # (gchar *) "b", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_arg_b.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_b = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalB", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-b" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_b.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_b ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__BOOLEAN (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_b: Handler for the #OrgProjectSignalingIface::single-arg-signal-b signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-b: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_b: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalB" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B] = 559s # g_signal_new ("single-arg-signal-b", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_b), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_b, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_BOOLEAN); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_b: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_b: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalB" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_b ( 559s # OrgProjectSignalingIface *object, 559s # gboolean arg_arg_b) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B], 0, arg_arg_b); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_b ( 559s # OrgProjectSignalingIface *object, 559s # gboolean arg_arg_b) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(b)", 559s # arg_arg_b)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalB", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_b = _org_project_signaling_iface_on_signal_single_arg_signal_b; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpuigupj4t.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpuigupj4t.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_arg_y = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_y", 559s # (gchar *) "y", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_arg_y.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_y = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalY", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-y" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_y.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_y ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__UCHAR (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_y: Handler for the #OrgProjectSignalingIface::single-arg-signal-y signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-y: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_y: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalY" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y] = 559s # g_signal_new ("single-arg-signal-y", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_y), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_y, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_UCHAR); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_y: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_y: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalY" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_y ( 559s # OrgProjectSignalingIface *object, 559s # guchar arg_arg_y) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y], 0, arg_arg_y); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_y ( 559s # OrgProjectSignalingIface *object, 559s # guchar arg_arg_y) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(y)", 559s # arg_arg_y)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalY", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_y = _org_project_signaling_iface_on_signal_single_arg_signal_y; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmp4yb36d14.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmp4yb36d14.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_arg_n = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_n", 559s # (gchar *) "n", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_arg_n.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_n = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalN", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-n" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_n.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_n ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__INT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_n: Handler for the #OrgProjectSignalingIface::single-arg-signal-n signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-n: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_n: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalN" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N] = 559s # g_signal_new ("single-arg-signal-n", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_n), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_n, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_INT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_n: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_n: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalN" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_n ( 559s # OrgProjectSignalingIface *object, 559s # gint16 arg_arg_n) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N], 0, arg_arg_n); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_n ( 559s # OrgProjectSignalingIface *object, 559s # gint16 arg_arg_n) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(n)", 559s # arg_arg_n)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalN", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_n = _org_project_signaling_iface_on_signal_single_arg_signal_n; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmp93xoege7.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmp93xoege7.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_arg_q = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_q", 559s # (gchar *) "q", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_arg_q.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_q = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalQ", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-q" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_q.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_q ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__UINT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_q: Handler for the #OrgProjectSignalingIface::single-arg-signal-q signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-q: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_q: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalQ" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q] = 559s # g_signal_new ("single-arg-signal-q", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_q), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_q, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_UINT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_q: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_q: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalQ" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_q ( 559s # OrgProjectSignalingIface *object, 559s # guint16 arg_arg_q) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q], 0, arg_arg_q); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_q ( 559s # OrgProjectSignalingIface *object, 559s # guint16 arg_arg_q) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(q)", 559s # arg_arg_q)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalQ", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_q = _org_project_signaling_iface_on_signal_single_arg_signal_q; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpt3tta_au.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpt3tta_au.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_arg_i = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_i", 559s # (gchar *) "i", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_arg_i.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_i = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalI", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-i" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_i.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_i ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__INT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_i: Handler for the #OrgProjectSignalingIface::single-arg-signal-i signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-i: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_i: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalI" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I] = 559s # g_signal_new ("single-arg-signal-i", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_i), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_i, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_INT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_i: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_i: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalI" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_i ( 559s # OrgProjectSignalingIface *object, 559s # gint arg_arg_i) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I], 0, arg_arg_i); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_i ( 559s # OrgProjectSignalingIface *object, 559s # gint arg_arg_i) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(i)", 559s # arg_arg_i)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalI", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_i = _org_project_signaling_iface_on_signal_single_arg_signal_i; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmp9qlc_3rl.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmp9qlc_3rl.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_arg_u = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_u", 559s # (gchar *) "u", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_arg_u.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_u = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalU", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-u" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_u.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_u ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__UINT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_u: Handler for the #OrgProjectSignalingIface::single-arg-signal-u signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-u: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_u: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalU" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U] = 559s # g_signal_new ("single-arg-signal-u", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_u), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_u, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_UINT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_u: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_u: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalU" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_u ( 559s # OrgProjectSignalingIface *object, 559s # guint arg_arg_u) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U], 0, arg_arg_u); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_u ( 559s # OrgProjectSignalingIface *object, 559s # guint arg_arg_u) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(u)", 559s # arg_arg_u)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalU", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_u = _org_project_signaling_iface_on_signal_single_arg_signal_u; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpmqqn2m_r.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpmqqn2m_r.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # static void 559s # _g_dbus_codegen_marshal_VOID__INT64 ( 559s # GClosure *closure, 559s # GValue *return_value G_GNUC_UNUSED, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint G_GNUC_UNUSED, 559s # void *marshal_data) 559s # { 559s # typedef void (*_GDbusCodegenMarshalVoid_Int64Func) 559s # (void *data1, 559s # gint64 arg_arg_x, 559s # void *data2); 559s # _GDbusCodegenMarshalVoid_Int64Func callback; 559s # GCClosure *cc = (GCClosure*) closure; 559s # void *data1, *data2; 559s # 559s # g_return_if_fail (n_param_values == 2); 559s # 559s # if (G_CCLOSURE_SWAP_DATA (closure)) 559s # { 559s # data1 = closure->data; 559s # data2 = g_value_peek_pointer (param_values + 0); 559s # } 559s # else 559s # { 559s # data1 = g_value_peek_pointer (param_values + 0); 559s # data2 = closure->data; 559s # } 559s # 559s # callback = (_GDbusCodegenMarshalVoid_Int64Func) 559s # (marshal_data ? marshal_data : cc->callback); 559s # 559s # callback (data1, 559s # g_marshal_value_peek_int64 (param_values + 1), 559s # data2); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_arg_x = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_x", 559s # (gchar *) "x", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_arg_x.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_x = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalX", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-x" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_x.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_x ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_VOID__INT64 (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_x: Handler for the #OrgProjectSignalingIface::single-arg-signal-x signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-x: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_x: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalX" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X] = 559s # g_signal_new ("single-arg-signal-x", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_x), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_x, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_INT64); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_x: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_x: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalX" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_x ( 559s # OrgProjectSignalingIface *object, 559s # gint64 arg_arg_x) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X], 0, arg_arg_x); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_x ( 559s # OrgProjectSignalingIface *object, 559s # gint64 arg_arg_x) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(x)", 559s # arg_arg_x)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalX", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_x = _org_project_signaling_iface_on_signal_single_arg_signal_x; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmptjs6khqr.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmptjs6khqr.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # static void 559s # _g_dbus_codegen_marshal_VOID__UINT64 ( 559s # GClosure *closure, 559s # GValue *return_value G_GNUC_UNUSED, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint G_GNUC_UNUSED, 559s # void *marshal_data) 559s # { 559s # typedef void (*_GDbusCodegenMarshalVoid_Uint64Func) 559s # (void *data1, 559s # guint64 arg_arg_t, 559s # void *data2); 559s # _GDbusCodegenMarshalVoid_Uint64Func callback; 559s # GCClosure *cc = (GCClosure*) closure; 559s # void *data1, *data2; 559s # 559s # g_return_if_fail (n_param_values == 2); 559s # 559s # if (G_CCLOSURE_SWAP_DATA (closure)) 559s # { 559s # data1 = closure->data; 559s # data2 = g_value_peek_pointer (param_values + 0); 559s # } 559s # else 559s # { 559s # data1 = g_value_peek_pointer (param_values + 0); 559s # data2 = closure->data; 559s # } 559s # 559s # callback = (_GDbusCodegenMarshalVoid_Uint64Func) 559s # (marshal_data ? marshal_data : cc->callback); 559s # 559s # callback (data1, 559s # g_marshal_value_peek_uint64 (param_values + 1), 559s # data2); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_arg_t = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_t", 559s # (gchar *) "t", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_arg_t.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_t = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalT", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-t" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_t.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_t ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_VOID__UINT64 (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_t: Handler for the #OrgProjectSignalingIface::single-arg-signal-t signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-t: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_t: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalT" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T] = 559s # g_signal_new ("single-arg-signal-t", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_t), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_t, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_UINT64); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_t: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_t: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalT" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_t ( 559s # OrgProjectSignalingIface *object, 559s # guint64 arg_arg_t) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T], 0, arg_arg_t); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_t ( 559s # OrgProjectSignalingIface *object, 559s # guint64 arg_arg_t) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(t)", 559s # arg_arg_t)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalT", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_t = _org_project_signaling_iface_on_signal_single_arg_signal_t; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpnh_m3eua.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpnh_m3eua.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_arg_d = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_d", 559s # (gchar *) "d", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_arg_d.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_d = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalD", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-d" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_d.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_d ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__DOUBLE (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_d: Handler for the #OrgProjectSignalingIface::single-arg-signal-d signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-d: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_d: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalD" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D] = 559s # g_signal_new ("single-arg-signal-d", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_d), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_d, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_DOUBLE); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_d: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_d: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalD" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_d ( 559s # OrgProjectSignalingIface *object, 559s # gdouble arg_arg_d) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D], 0, arg_arg_d); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_d ( 559s # OrgProjectSignalingIface *object, 559s # gdouble arg_arg_d) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(d)", 559s # arg_arg_d)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalD", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_d = _org_project_signaling_iface_on_signal_single_arg_signal_d; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmp828r450d.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmp828r450d.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_arg_s = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_s", 559s # (gchar *) "s", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_arg_s.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_s = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalS", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-s" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_s.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_s ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__STRING (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_s: Handler for the #OrgProjectSignalingIface::single-arg-signal-s signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-s: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_s: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalS" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S] = 559s # g_signal_new ("single-arg-signal-s", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_s), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_s, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRING); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_s: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_s: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalS" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_s ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_s) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S], 0, arg_arg_s); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_s ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_s) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(s)", 559s # arg_arg_s)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalS", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_s = _org_project_signaling_iface_on_signal_single_arg_signal_s; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpj5tzuk35.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpj5tzuk35.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_arg_o = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_o", 559s # (gchar *) "o", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_arg_o.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_o = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalO", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-o" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_o.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_o ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__STRING (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_o: Handler for the #OrgProjectSignalingIface::single-arg-signal-o signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-o: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_o: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalO" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O] = 559s # g_signal_new ("single-arg-signal-o", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_o), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_o, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRING); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_o: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_o: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalO" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_o ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_o) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O], 0, arg_arg_o); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_o ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_o) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(o)", 559s # arg_arg_o)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalO", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_o = _org_project_signaling_iface_on_signal_single_arg_signal_o; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmp3oh53vgf.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmp3oh53vgf.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_arg_g = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_g", 559s # (gchar *) "g", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_arg_g.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_g = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalG", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-g" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_g.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_g ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__STRING (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_g: Handler for the #OrgProjectSignalingIface::single-arg-signal-g signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-g: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_g: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalG" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G] = 559s # g_signal_new ("single-arg-signal-g", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_g), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_g, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRING); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_g: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_g: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalG" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_g ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_g) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G], 0, arg_arg_g); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_g ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_g) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(g)", 559s # arg_arg_g)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalG", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_g = _org_project_signaling_iface_on_signal_single_arg_signal_g; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpikju82lb.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpikju82lb.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_arg_h = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_h", 559s # (gchar *) "h", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_arg_h.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_h = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalH", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-h" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_h.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_h ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VARIANT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_h: Handler for the #OrgProjectSignalingIface::single-arg-signal-h signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-h: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_h: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalH" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H] = 559s # g_signal_new ("single-arg-signal-h", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_h), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_h, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_VARIANT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_h: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_h: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalH" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_h ( 559s # OrgProjectSignalingIface *object, 559s # GVariant *arg_arg_h) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H], 0, arg_arg_h); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_h ( 559s # OrgProjectSignalingIface *object, 559s # GVariant *arg_arg_h) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(@h)", 559s # arg_arg_h)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalH", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_h = _org_project_signaling_iface_on_signal_single_arg_signal_h; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpqc8jdnvf.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpqc8jdnvf.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_arg_ay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_ay", 559s # (gchar *) "ay", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_arg_ay.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalAy", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-ay" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__STRING (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_ay: Handler for the #OrgProjectSignalingIface::single-arg-signal-ay signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-ay: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_ay: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAy" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY] = 559s # g_signal_new ("single-arg-signal-ay", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ay), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRING); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_ay: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_ay: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalAy" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_ay ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_ay) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY], 0, arg_arg_ay); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_ay ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *arg_arg_ay) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ay)", 559s # arg_arg_ay)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAy", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_ay = _org_project_signaling_iface_on_signal_single_arg_signal_ay; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpnn4a25ce.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpnn4a25ce.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_arg_as = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_as", 559s # (gchar *) "as", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_arg_as.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_as = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalAs", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-as" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_as.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_as ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__BOXED (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_as: Handler for the #OrgProjectSignalingIface::single-arg-signal-as signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-as: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_as: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAs" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS] = 559s # g_signal_new ("single-arg-signal-as", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_as), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_as, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRV); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_as: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_as: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalAs" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_as ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_as) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS], 0, arg_arg_as); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_as ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_as) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(^as)", 559s # arg_arg_as)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAs", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_as = _org_project_signaling_iface_on_signal_single_arg_signal_as; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpa1ca633n.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpa1ca633n.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_arg_ao = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_ao", 559s # (gchar *) "ao", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_arg_ao.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalAo", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-ao" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__BOXED (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_ao: Handler for the #OrgProjectSignalingIface::single-arg-signal-ao signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-ao: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_ao: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAo" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO] = 559s # g_signal_new ("single-arg-signal-ao", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ao), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRV); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_ao: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_ao: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalAo" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_ao ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_ao) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO], 0, arg_arg_ao); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_ao ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_ao) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ao)", 559s # arg_arg_ao)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAo", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_ao = _org_project_signaling_iface_on_signal_single_arg_signal_ao; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmpu05wg60o.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmpu05wg60o.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_arg_aay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_aay", 559s # (gchar *) "aay", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_arg_aay.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalAay", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-aay" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__BOXED (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_aay: Handler for the #OrgProjectSignalingIface::single-arg-signal-aay signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-aay: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_aay: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAay" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY] = 559s # g_signal_new ("single-arg-signal-aay", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_aay), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_STRV); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_aay: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_aay: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalAay" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_aay ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_aay) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY], 0, arg_arg_aay); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_aay ( 559s # OrgProjectSignalingIface *object, 559s # const gchar *const *arg_arg_aay) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(^aay)", 559s # arg_arg_aay)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAay", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_aay = _org_project_signaling_iface_on_signal_single_arg_signal_aay; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # /tmp/tmpepfkerz6/tmplac7_ayz.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepfkerz6/tmplac7_ayz.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_arg_asv = 559s # { 559s # { 559s # -1, 559s # (gchar *) "arg_asv", 559s # (gchar *) "a{sv}", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_arg_asv.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SingleArgSignalAsv", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers, 559s # NULL 559s # }, 559s # "single-arg-signal-asv" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VARIANT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * @single_arg_signal_asv: Handler for the #OrgProjectSignalingIface::single-arg-signal-asv signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::single-arg-signal-asv: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_asv: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAsv" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV] = 559s # g_signal_new ("single-arg-signal-asv", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_asv), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv, 559s # G_TYPE_NONE, 559s # 1, G_TYPE_VARIANT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_single_arg_signal_asv: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_arg_asv: Argument to pass with the signal. 559s # * 559s # * Emits the "SingleArgSignalAsv" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_single_arg_signal_asv ( 559s # OrgProjectSignalingIface *object, 559s # GVariant *arg_arg_asv) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV], 0, arg_arg_asv); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_single_arg_signal_asv ( 559s # OrgProjectSignalingIface *object, 559s # GVariant *arg_arg_asv) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(@a{sv})", 559s # arg_arg_asv)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAsv", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->single_arg_signal_asv = _org_project_signaling_iface_on_signal_single_arg_signal_asv; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s ok 24 __main__.TestCodegen.test_generate_signals_marshallers_multiple_args 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmp2uykns71 559s # /tmp/tmp2uykns71/tmp6bc_k3_3.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp2uykns71/tmp6bc_k3_3.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # static void 559s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 559s # GClosure *closure, 559s # GValue *return_value G_GNUC_UNUSED, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint G_GNUC_UNUSED, 559s # void *marshal_data) 559s # { 559s # typedef void (*_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 559s # (void *data1, 559s # gboolean arg_an_b, 559s # guchar arg_an_y, 559s # gint16 arg_an_n, 559s # guint16 arg_an_q, 559s # gint arg_an_i, 559s # guint arg_an_u, 559s # gint64 arg_an_x, 559s # guint64 arg_an_t, 559s # gdouble arg_an_d, 559s # const gchar *arg_an_s, 559s # const gchar *arg_an_o, 559s # const gchar *arg_an_g, 559s # GVariant *arg_an_h, 559s # const gchar *arg_an_ay, 559s # const gchar *const *arg_an_as, 559s # const gchar *const *arg_an_ao, 559s # const gchar *const *arg_an_aay, 559s # GVariant *arg_an_asv, 559s # void *data2); 559s # _GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 559s # GCClosure *cc = (GCClosure*) closure; 559s # void *data1, *data2; 559s # 559s # g_return_if_fail (n_param_values == 19); 559s # 559s # if (G_CCLOSURE_SWAP_DATA (closure)) 559s # { 559s # data1 = closure->data; 559s # data2 = g_value_peek_pointer (param_values + 0); 559s # } 559s # else 559s # { 559s # data1 = g_value_peek_pointer (param_values + 0); 559s # data2 = closure->data; 559s # } 559s # 559s # callback = (_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 559s # (marshal_data ? marshal_data : cc->callback); 559s # 559s # callback (data1, 559s # g_marshal_value_peek_boolean (param_values + 1), 559s # g_marshal_value_peek_uchar (param_values + 2), 559s # g_marshal_value_peek_int (param_values + 3), 559s # g_marshal_value_peek_uint (param_values + 4), 559s # g_marshal_value_peek_int (param_values + 5), 559s # g_marshal_value_peek_uint (param_values + 6), 559s # g_marshal_value_peek_int64 (param_values + 7), 559s # g_marshal_value_peek_uint64 (param_values + 8), 559s # g_marshal_value_peek_double (param_values + 9), 559s # g_marshal_value_peek_string (param_values + 10), 559s # g_marshal_value_peek_string (param_values + 11), 559s # g_marshal_value_peek_string (param_values + 12), 559s # g_marshal_value_peek_variant (param_values + 13), 559s # g_marshal_value_peek_string (param_values + 14), 559s # g_marshal_value_peek_boxed (param_values + 15), 559s # g_marshal_value_peek_boxed (param_values + 16), 559s # g_marshal_value_peek_boxed (param_values + 17), 559s # g_marshal_value_peek_variant (param_values + 18), 559s # data2); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.SignalingIface 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectSignalingIface 559s # * @title: OrgProjectSignalingIface 559s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS, 559s # }; 559s # 559s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 559s # 559s # /* ---- Introspection data for org.project.SignalingIface ---- */ 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SimpleSignal", 559s # NULL, 559s # NULL 559s # }, 559s # "simple-signal" 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_b", 559s # (gchar *) "b", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_y", 559s # (gchar *) "y", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_n", 559s # (gchar *) "n", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_q", 559s # (gchar *) "q", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_i", 559s # (gchar *) "i", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_u", 559s # (gchar *) "u", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_x", 559s # (gchar *) "x", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_t", 559s # (gchar *) "t", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_d", 559s # (gchar *) "d", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_s", 559s # (gchar *) "s", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_o", 559s # (gchar *) "o", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_g", 559s # (gchar *) "g", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_h", 559s # (gchar *) "h", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_ay", 559s # (gchar *) "ay", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_as", 559s # (gchar *) "as", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_ao", 559s # (gchar *) "ao", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_aay", 559s # (gchar *) "aay", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv = 559s # { 559s # { 559s # -1, 559s # (gchar *) "an_asv", 559s # (gchar *) "a{sv}", 559s # NULL 559s # }, 559s # FALSE 559s # }; 559s # 559s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_signal_with_many_args = 559s # { 559s # { 559s # -1, 559s # (gchar *) "SignalWithManyArgs", 559s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers, 559s # NULL 559s # }, 559s # "signal-with-many-args" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 559s # { 559s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 559s # &_org_project_signaling_iface_signal_info_signal_with_many_args.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.SignalingIface", 559s # NULL, 559s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-signaling-iface", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_signaling_iface_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_simple_signal ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # org_project_signaling_iface_signal_marshal_signal_with_many_args ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectSignalingIface: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceIface: 559s # * @parent_iface: The parent interface. 559s # * @signal_with_many_args: Handler for the #OrgProjectSignalingIface::signal-with-many-args signal. 559s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.SignalingIface. 559s # */ 559s # 559s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 559s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * OrgProjectSignalingIface::simple-signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 559s # g_signal_new ("simple-signal", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_simple_signal, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /** 559s # * OrgProjectSignalingIface::signal-with-many-args: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_an_b: Argument. 559s # * @arg_an_y: Argument. 559s # * @arg_an_n: Argument. 559s # * @arg_an_q: Argument. 559s # * @arg_an_i: Argument. 559s # * @arg_an_u: Argument. 559s # * @arg_an_x: Argument. 559s # * @arg_an_t: Argument. 559s # * @arg_an_d: Argument. 559s # * @arg_an_s: Argument. 559s # * @arg_an_o: Argument. 559s # * @arg_an_g: Argument. 559s # * @arg_an_h: Argument. 559s # * @arg_an_ay: Argument. 559s # * @arg_an_as: Argument. 559s # * @arg_an_ao: Argument. 559s # * @arg_an_aay: Argument. 559s # * @arg_an_asv: Argument. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "SignalWithManyArgs" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS] = 559s # g_signal_new ("signal-with-many-args", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, signal_with_many_args), 559s # NULL, 559s # NULL, 559s # org_project_signaling_iface_signal_marshal_signal_with_many_args, 559s # G_TYPE_NONE, 559s # 18, G_TYPE_BOOLEAN, G_TYPE_UCHAR, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT, G_TYPE_UINT, G_TYPE_INT64, G_TYPE_UINT64, G_TYPE_DOUBLE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT, G_TYPE_STRING, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_VARIANT); 559s # 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_simple_signal: 559s # * @object: A #OrgProjectSignalingIface. 559s # * 559s # * Emits the "SimpleSignal" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_emit_signal_with_many_args: 559s # * @object: A #OrgProjectSignalingIface. 559s # * @arg_an_b: Argument to pass with the signal. 559s # * @arg_an_y: Argument to pass with the signal. 559s # * @arg_an_n: Argument to pass with the signal. 559s # * @arg_an_q: Argument to pass with the signal. 559s # * @arg_an_i: Argument to pass with the signal. 559s # * @arg_an_u: Argument to pass with the signal. 559s # * @arg_an_x: Argument to pass with the signal. 559s # * @arg_an_t: Argument to pass with the signal. 559s # * @arg_an_d: Argument to pass with the signal. 559s # * @arg_an_s: Argument to pass with the signal. 559s # * @arg_an_o: Argument to pass with the signal. 559s # * @arg_an_g: Argument to pass with the signal. 559s # * @arg_an_h: Argument to pass with the signal. 559s # * @arg_an_ay: Argument to pass with the signal. 559s # * @arg_an_as: Argument to pass with the signal. 559s # * @arg_an_ao: Argument to pass with the signal. 559s # * @arg_an_aay: Argument to pass with the signal. 559s # * @arg_an_asv: Argument to pass with the signal. 559s # * 559s # * Emits the "SignalWithManyArgs" D-Bus signal. 559s # */ 559s # void 559s # org_project_signaling_iface_emit_signal_with_many_args ( 559s # OrgProjectSignalingIface *object, 559s # gboolean arg_an_b, 559s # guchar arg_an_y, 559s # gint16 arg_an_n, 559s # guint16 arg_an_q, 559s # gint arg_an_i, 559s # guint arg_an_u, 559s # gint64 arg_an_x, 559s # guint64 arg_an_t, 559s # gdouble arg_an_d, 559s # const gchar *arg_an_s, 559s # const gchar *arg_an_o, 559s # const gchar *arg_an_g, 559s # GVariant *arg_an_h, 559s # const gchar *arg_an_ay, 559s # const gchar *const *arg_an_as, 559s # const gchar *const *arg_an_ao, 559s # const gchar *const *arg_an_aay, 559s # GVariant *arg_an_asv) 559s # { 559s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS], 0, arg_an_b, arg_an_y, arg_an_n, arg_an_q, arg_an_i, arg_an_u, arg_an_x, arg_an_t, arg_an_d, arg_an_s, arg_an_o, arg_an_g, arg_an_h, arg_an_ay, arg_an_as, arg_an_ao, arg_an_aay, arg_an_asv); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxy: 559s # * 559s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceProxy. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 559s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 559s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_signaling_iface_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.SignalingIface", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_SIGNALING_IFACE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeleton: 559s # * 559s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectSignalingIfaceSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 559s # */ 559s # 559s # struct _OrgProjectSignalingIfaceSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_signaling_iface_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_signaling_iface_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_signaling_iface_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 559s # { 559s # _org_project_signaling_iface_skeleton_handle_method_call, 559s # _org_project_signaling_iface_skeleton_handle_get_property, 559s # _org_project_signaling_iface_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_signaling_iface_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_signaling_iface_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_simple_signal ( 559s # OrgProjectSignalingIface *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void 559s # _org_project_signaling_iface_on_signal_signal_with_many_args ( 559s # OrgProjectSignalingIface *object, 559s # gboolean arg_an_b, 559s # guchar arg_an_y, 559s # gint16 arg_an_n, 559s # guint16 arg_an_q, 559s # gint arg_an_i, 559s # guint arg_an_u, 559s # gint64 arg_an_x, 559s # guint64 arg_an_t, 559s # gdouble arg_an_d, 559s # const gchar *arg_an_s, 559s # const gchar *arg_an_o, 559s # const gchar *arg_an_g, 559s # GVariant *arg_an_h, 559s # const gchar *arg_an_ay, 559s # const gchar *const *arg_an_as, 559s # const gchar *const *arg_an_ao, 559s # const gchar *const *arg_an_aay, 559s # GVariant *arg_an_asv) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 559s # arg_an_b, 559s # arg_an_y, 559s # arg_an_n, 559s # arg_an_q, 559s # arg_an_i, 559s # arg_an_u, 559s # arg_an_x, 559s # arg_an_t, 559s # arg_an_d, 559s # arg_an_s, 559s # arg_an_o, 559s # arg_an_g, 559s # arg_an_h, 559s # arg_an_ay, 559s # arg_an_as, 559s # arg_an_ao, 559s # arg_an_aay, 559s # arg_an_asv)); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SignalWithManyArgs", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_signaling_iface_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_prop# Executing: glib/codegen.py.test 559s erties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 559s # { 559s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 559s # iface->signal_with_many_args = _org_project_signaling_iface_on_signal_signal_with_many_args; 559s # } 559s # 559s # /** 559s # * org_project_signaling_iface_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 559s # * 559s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 559s # */ 559s # OrgProjectSignalingIface * 559s # org_project_signaling_iface_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 559s # } 559s # Error: 559s ok 25 __main__.TestCodegen.test_generate_valid_docbook 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpar24bp2f 559s # /tmp/tmpar24bp2f/tmp456t4njm.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpar24bp2f/tmp456t4njm.xml', '--generate-docbook', 'test'] 559s # Return code: 0 559s # Output: 559s # 559s # Error: 559s ok 26 __main__.TestCodegen.test_glib_max_allowed_less_than_min_required 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpupsrgl3d 559s # /tmp/tmpupsrgl3d/tmpy5t3l8d9.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpupsrgl3d/tmpy5t3l8d9.xml', '--output', '-', '--body', '--glib-max-allowed', '2.62', '--glib-min-required', '2.64'] 559s # Return code: 1 559s # Output: 559s # 559s # Error: 559s # ERROR: Invalid versions: --glib-min-required ((2, 64)) must be less than or equal to --glib-max-allowed ((2, 62)) 559s ok 27 __main__.TestCodegen.test_glib_max_allowed_major_only 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmp8geo3we5 559s # /tmp/tmp8geo3we5/tmpc1nkdajx.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp8geo3we5/tmpc1nkdajx.xml', '--output', '-', '--header', '--glib-max-allowed', '3'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s ok 28 __main__.TestCodegen.test_glib_max_allowed_too_low 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpd1l60ach 559s # /tmp/tmpd1l60ach/tmps4jfdimi.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd1l60ach/tmps4jfdimi.xml', '--output', '-', '--body', '--glib-max-allowed', '2.6'] 559s # Return code: 1 559s # Output: 559s # 559s # Error: 559s # ERROR: Invalid versions: --glib-min-required ((2, 30)) must be less than or equal to --glib-max-allowed ((2, 6)) 559s ok 29 __main__.TestCodegen.test_glib_max_allowed_unstable 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpccbifagk 559s # /tmp/tmpccbifagk/tmpa5sourkx.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpccbifagk/tmpa5sourkx.xml', '--output', '-', '--header', '--glib-max-allowed', '2.63', '--glib-min-required', '2.64'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s ok 30 __main__.TestCodegen.test_glib_max_allowed_with_micro 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpeic5uebz 559s # /tmp/tmpeic5uebz/tmpf1jk4dqt.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpeic5uebz/tmpf1jk4dqt.xml', '--output', '-', '--header', '--glib-max-allowed', '2.46.2'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s ok 31 __main__.TestCodegen.test_glib_min_required_invalid 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpg98gpp_f 559s # /tmp/tmpg98gpp_f/tmpu7ojy0oy.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpg98gpp_f/tmpu7ojy0oy.xml', '--output', '-', '--body', '--glib-min-required', 'hello mum'] 559s # Return code: 1 559s # Output: 559s # 559s # Error: 559s # ERROR: Unrecognized --glib-min-required string ‘hello mum’ 559s ok 32 __main__.TestCodegen.test_glib_min_required_major_only 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpae34if8s 559s # /tmp/tmpae34if8s/tmp0hh9toz0.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpae34if8s/tmp0hh9toz0.xml', '--output', '-', '--header', '--glib-min-required', '3', '--glib-max-allowed', '3.2'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s ok 33 __main__.TestCodegen.test_glib_min_required_too_low 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpbl2_t3f2 559s # /tmp/tmpbl2_t3f2/tmpwqe8q_f5.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpbl2_t3f2/tmpwqe8q_f5.xml', '--output', '-', '--body', '--glib-min-required', '2.6'] 559s # Return code: 1 559s # Output: 559s # 559s # Error: 559s # ERROR: Invalid --glib-min-required string ‘2.6’: minimum version is 2.30 559s ok 34 __main__.TestCodegen.test_glib_min_required_with_micro 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpzgtyx0gr 559s # /tmp/tmpzgtyx0gr/tmpnobodfyg.xml: 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpzgtyx0gr/tmpnobodfyg.xml', '--output', '-', '--header', '--glib-min-required', '2.46.2'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s ok 35 __main__.TestCodegen.test_help 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpnszkkdjl 559s # Running: ['/usr/bin/gdbus-codegen', '--help'] 559s # Return code: 0 559s # Output: 559s # usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 559s # [--c-namespace NAMESPACE] [--c-generate-object-manager] 559s # [--c-generate-autocleanup {none,objects,all}] 559s # [--generate-docbook OUTFILES] [--generate-md OUTFILES] 559s # [--generate-rst OUTFILES] [--pragma-once] 559s # [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 559s # [--glib-min-required VERSION] 559s # [--glib-max-allowed VERSION] 559s # [--symbol-decorator SYMBOL_DECORATOR] 559s # [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 559s # [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 559s # [--generate-c-code OUTFILES | --header | --body | 559s # --interface-info-header | --interface-info-body] 559s # [--output FILE | --output-directory OUTDIR] 559s # FILE [FILE ...] 559s # 559s # D-Bus code and documentation generator 559s # 559s # positional arguments: 559s # FILE D-Bus introspection XML file 559s # 559s # options: 559s # -h, --help show this help message and exit 559s # --interface-prefix PREFIX 559s # String to strip from D-Bus interface names for code 559s # and docs 559s # --c-namespace NAMESPACE 559s # The namespace to use for generated C code 559s # --c-generate-object-manager 559s # Generate a GDBusObjectManagerClient subclass when 559s # generating C code 559s # --c-generate-autocleanup {none,objects,all} 559s # Generate autocleanup support 559s # --generate-docbook OUTFILES 559s # Generate Docbook in OUTFILES-org.Project.IFace.xml 559s # --generate-md OUTFILES 559s # Generate Markdown in OUTFILES-org.Project.IFace.md 559s # --generate-rst OUTFILES 559s # Generate reStructuredText in OUTFILES- 559s # org.Project.IFace.rst 559s # --pragma-once Use "pragma once" as the inclusion guard 559s # --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 559s # Add annotation (may be used several times) 559s # --glib-min-required VERSION 559s # Minimum version of GLib to be supported by the 559s # outputted code (default: 2.30) 559s # --glib-max-allowed VERSION 559s # Maximum version of GLib to be used by the outputted 559s # code (default: current GLib version) 559s # --symbol-decorator SYMBOL_DECORATOR 559s # Macro used to decorate a symbol in the outputted 559s # header, possibly to export symbols 559s # --symbol-decorator-header SYMBOL_DECORATOR_HEADER 559s # Additional header required for decorator specified by 559s # --symbol-decorator 559s # --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 559s # Additional define required for decorator specified by 559s # --symbol-decorator 559s # --generate-c-code OUTFILES 559s # Generate C code in OUTFILES.[ch] 559s # --header Generate C headers 559s # --body Generate C code 559s # --interface-info-header 559s # Generate GDBusInterfaceInfo C header 559s # --interface-info-body 559s # Generate GDBusInterfaceInfo C code 559s # --output FILE Write output into the specified file 559s # --output-directory OUTDIR 559s # Location to output generated files 559s # Error: 559s ok 36 __main__.TestCodegen.test_indentation_preservation_in_comments 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmp4e7bfhd3 559s # /tmp/tmp4e7bfhd3/tmpcb22y1ge.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4e7bfhd3/tmpcb22y1ge.xml', '--generate-rst', 'test'] 559s # Return code: 0 559s # Output: 559s # 559s # Error: 559s # 559s # /tmp/tmp4e7bfhd3/tmpgi3cvim6.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4e7bfhd3/tmpgi3cvim6.xml', '--generate-md', 'test'] 559s # Return code: 0 559s # Output: 559s # 559s # Error: 559s # 559s # /tmp/tmp4e7bfhd3/tmp6qhklj0p.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4e7bfhd3/tmp6qhklj0p.xml', '--generate-docbook', 'test'] 559s # Return code: 0 559s # Output: 559s # 559s # Error: 559s ok 37 __main__.TestCodegen.test_no_args 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpab05fvbz 559s # Running: ['/usr/bin/gdbus-codegen'] 559s # Return code: 2 559s # Output: 559s # 559s # Error: 559s # usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 559s # [--c-namespace NAMESPACE] [--c-generate-object-manager] 559s # [--c-generate-autocleanup {none,objects,all}] 559s # [--generate-docbook OUTFILES] [--generate-md OUTFILES] 559s # [--generate-rst OUTFILES] [--pragma-once] 559s # [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 559s # [--glib-min-required VERSION] 559s # [--glib-max-allowed VERSION] 559s # [--symbol-decorator SYMBOL_DECORATOR] 559s # [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 559s # [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 559s # [--generate-c-code OUTFILES | --header | --body | 559s # --interface-info-header | --interface-info-body] 559s # [--output FILE | --output-directory OUTDIR] 559s # FILE [FILE ...] 559s # gdbus-codegen: error: the following arguments are required: FILE 559s ok 38 __main__.TestCodegen.test_reproducible 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmpmr69yqjy 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpmr69yqjy/tmpltbxxuet1.xml', '/tmp/tmpmr69yqjy/tmpkk71bvit2.xml', '--output', '-', '--header'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for org.project.Bar.Frobnicator */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface)) 559s # 559s # struct _OrgProjectBarFrobnicator; 559s # typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator; 559s # typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface; 559s # 559s # struct _OrgProjectBarFrobnicatorIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # gboolean (*handle_random_method) ( 559s # OrgProjectBarFrobnicator *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # }; 559s # 559s # GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void); 559s # guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void org_project_bar_frobnicator_complete_random_method ( 559s # OrgProjectBarFrobnicator *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void org_project_bar_frobnicator_call_random_method ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean org_project_bar_frobnicator_call_random_method_finish ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean org_project_bar_frobnicator_call_random_method_sync ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 559s # 559s # typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy; 559s # typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass; 559s # typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate; 559s # 559s # struct _OrgProjectBarFrobnicatorProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # OrgProjectBarFrobnicatorProxyPrivate *priv; 559s # }; 559s # 559s # struct _OrgProjectBarFrobnicatorProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref) 559s # #endif 559s # 559s # void org_project_bar_frobnicator_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void org_project_bar_frobnicator_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 559s # 559s # typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton; 559s # typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass; 559s # typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate; 559s # 559s # struct _OrgProjectBarFrobnicatorSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # OrgProjectBarFrobnicatorSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _OrgProjectBarFrobnicatorSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref) 559s # #endif 559s # 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void); 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for com.acme.Coyote */ 559s # 559s # #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ()) 559s # #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote)) 559s # #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE)) 559s # #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface)) 559s # 559s # struct _ComAcmeCoyote; 559s # typedef struct _ComAcmeCoyote ComAcmeCoyote; 559s # typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface; 559s # 559s # struct _ComAcmeCoyoteIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # 559s # 559s # gboolean (*handle_attack) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # gboolean (*handle_run) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # gboolean (*handle_sleep) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # const gchar * (*get_mood) (ComAcmeCoyote *object); 559s # 559s # void (*surprised) ( 559s # ComAcmeCoyote *object); 559s # 559s # }; 559s # 559s # GType com_acme_coyote_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *com_acme_coyote_interface_info (void); 559s # guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void com_acme_coyote_complete_run ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # void com_acme_coyote_complete_sleep ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # void com_acme_coyote_complete_attack ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus signal emissions functions: */ 559s # void com_acme_coyote_emit_surprised ( 559s # ComAcmeCoyote *object); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void com_acme_coyote_call_run ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_run_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_run_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_call_sleep ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_sleep_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_sleep_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_call_attack ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_attack_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_attack_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* D-Bus property accessors: */ 559s # const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object); 559s # gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object); 559s # void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ()) 559s # #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy)) 559s # #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 559s # #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 559s # #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY)) 559s # #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY)) 559s # 559s # typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy; 559s # typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass; 559s # typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate; 559s # 559s # struct _ComAcmeCoyoteProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # ComAcmeCoyoteProxyPrivate *priv; 559s # }; 559s # 559s # struct _ComAcmeCoyoteProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref) 559s # #endif 559s # 559s # void com_acme_coyote_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ()) 559s # #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton)) 559s # #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 559s # #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 559s # #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON)) 559s # #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON)) 559s # 559s # typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton; 559s # typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass; 559s # typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate; 559s # 559s # struct _ComAcmeCoyoteSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # ComAcmeCoyoteSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _ComAcmeCoyoteSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref) 559s # #endif 559s # 559s # ComAcmeCoyote *com_acme_coyote_skeleton_new (void); 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpmr69yqjy/tmpkk71bvit2.xml', '/tmp/tmpmr69yqjy/tmpltbxxuet1.xml', '--output', '-', '--header'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for org.project.Bar.Frobnicator */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface)) 559s # 559s # struct _OrgProjectBarFrobnicator; 559s # typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator; 559s # typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface; 559s # 559s # struct _OrgProjectBarFrobnicatorIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # gboolean (*handle_random_method) ( 559s # OrgProjectBarFrobnicator *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # }; 559s # 559s # GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void); 559s # guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void org_project_bar_frobnicator_complete_random_method ( 559s # OrgProjectBarFrobnicator *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void org_project_bar_frobnicator_call_random_method ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean org_project_bar_frobnicator_call_random_method_finish ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean org_project_bar_frobnicator_call_random_method_sync ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 559s # 559s # typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy; 559s # typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass; 559s # typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate; 559s # 559s # struct _OrgProjectBarFrobnicatorProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # OrgProjectBarFrobnicatorProxyPrivate *priv; 559s # }; 559s # 559s # struct _OrgProjectBarFrobnicatorProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref) 559s # #endif 559s # 559s # void org_project_bar_frobnicator_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void org_project_bar_frobnicator_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ()) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 559s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 559s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 559s # 559s # typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton; 559s # typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass; 559s # typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate; 559s # 559s # struct _OrgProjectBarFrobnicatorSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # OrgProjectBarFrobnicatorSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _OrgProjectBarFrobnicatorSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref) 559s # #endif 559s # 559s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void); 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for com.acme.Coyote */ 559s # 559s # #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ()) 559s # #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote)) 559s # #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE)) 559s # #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface)) 559s # 559s # struct _ComAcmeCoyote; 559s # typedef struct _ComAcmeCoyote ComAcmeCoyote; 559s # typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface; 559s # 559s # struct _ComAcmeCoyoteIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # 559s # 559s # gboolean (*handle_attack) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # gboolean (*handle_run) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # gboolean (*handle_sleep) ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # const gchar * (*get_mood) (ComAcmeCoyote *object); 559s # 559s # void (*surprised) ( 559s # ComAcmeCoyote *object); 559s # 559s # }; 559s # 559s # GType com_acme_coyote_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *com_acme_coyote_interface_info (void); 559s # guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void com_acme_coyote_complete_run ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # void com_acme_coyote_complete_sleep ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # void com_acme_coyote_complete_attack ( 559s # ComAcmeCoyote *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus signal emissions functions: */ 559s # void com_acme_coyote_emit_surprised ( 559s # ComAcmeCoyote *object); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void com_acme_coyote_call_run ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_run_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_run_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_call_sleep ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_sleep_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_sleep_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_call_attack ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean com_acme_coyote_call_attack_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean com_acme_coyote_call_attack_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* D-Bus property accessors: */ 559s # const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object); 559s # gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object); 559s # void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ()) 559s # #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy)) 559s # #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 559s # #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 559s # #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY)) 559s # #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY)) 559s # 559s # typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy; 559s # typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass; 559s # typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate; 559s # 559s # struct _ComAcmeCoyoteProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # ComAcmeCoyoteProxyPrivate *priv; 559s # }; 559s # 559s # struct _ComAcmeCoyoteProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref) 559s # #endif 559s # 559s # void com_acme_coyote_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void com_acme_coyote_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ()) 559s # #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton)) 559s # #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 559s # #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 559s # #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON)) 559s # #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON)) 559s # 559s # typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton; 559s # typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass; 559s # typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate; 559s # 559s # struct _ComAcmeCoyoteSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # ComAcmeCoyoteSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _ComAcmeCoyoteSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref) 559s # #endif 559s # 559s # ComAcmeCoyote *com_acme_coyote_skeleton_new (void); 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpmr69yqjy/tmpltbxxuet1.xml', '/tmp/tmpmr69yqjy/tmpkk71bvit2.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # static void 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint G_GNUC_UNUSED, 559s # void *marshal_data) 559s # { 559s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 559s # (void *data1, 559s # GDBusMethodInvocation *arg_method_invocation, 559s # void *data2); 559s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 559s # GCClosure *cc = (GCClosure*) closure; 559s # void *data1, *data2; 559s # gboolean v_return; 559s # 559s # g_return_if_fail (return_value != NULL); 559s # g_return_if_fail (n_param_values == 2); 559s # 559s # if (G_CCLOSURE_SWAP_DATA (closure)) 559s # { 559s # data1 = closure->data; 559s # data2 = g_value_peek_pointer (param_values + 0); 559s # } 559s # else 559s # { 559s # data1 = g_value_peek_pointer (param_values + 0); 559s # data2 = closure->data; 559s # } 559s # 559s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 559s # (marshal_data ? marshal_data : cc->callback); 559s # 559s # v_return = 559s # callback (data1, 559s # g_marshal_value_peek_object (param_values + 1), 559s # data2); 559s # 559s # g_value_set_boolean (return_value, v_return); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.Bar.Frobnicator 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectBarFrobnicator 559s # * @title: OrgProjectBarFrobnicator 559s # * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.Bar.Frobnicator D-Bus interface in C. 559s # */ 559s # 559s # /* ---- Introspection data for org.project.Bar.Frobnicator ---- */ 559s # 559s # static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method = 559s # { 559s # { 559s # -1, 559s # (gchar *) "RandomMethod", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-random-method", 559s # FALSE 559s # }; 559s # 559s # static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] = 559s # { 559s # &_org_project_bar_frobnicator_method_info_random_method.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.Bar.Frobnicator", 559s # (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers, 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-bar-frobnicator", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_bar_frobnicator_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.Bar.Frobnicator D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_bar_frobnicator_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_bar_frobnicator_method_marshal_random_method ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectBarFrobnicator: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.Bar.Frobnicator. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorIface: 559s # * @parent_iface: The parent interface. 559s # * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.Bar.Frobnicator. 559s # */ 559s # 559s # typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface; 559s # G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface) 559s # { 559s # /* GObject signals for incoming D-Bus method calls: */ 559s # /** 559s # * OrgProjectBarFrobnicator::handle-random-method: 559s # * @object: A #OrgProjectBarFrobnicator. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the RandomMethod() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_bar_frobnicator_complete_random_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-random-method", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # org_project_bar_frobnicator_method_marshal_random_method, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the RandomMethod() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # org_project_bar_frobnicator_call_random_method ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "RandomMethod", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method_finish: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_call_random_method(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # org_project_bar_frobnicator_call_random_method_finish ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method_sync: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the RandomMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # org_project_bar_frobnicator_call_random_method_sync ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "RandomMethod", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_complete_random_method: 559s # * @object: A #OrgProjectBarFrobnicator. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the RandomMethod() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # org_project_bar_frobnicator_complete_random_method ( 559s # OrgProjectBarFrobnicator *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorProxy: 559s # * 559s # * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectBarFrobnicatorProxy. 559s # */ 559s # 559s # struct _OrgProjectBarFrobnicatorProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_bar_frobnicator_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_bar_frobnicator_proxy_finalize; 559s # gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property; 559s # gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_bar_frobnicator_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_bar_frobnicator_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorSkeleton: 559s # * 559s # * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectBarFrobnicatorSkeleton. 559s # */ 559s # 559s # struct _OrgProjectBarFrobnicatorSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_bar_frobnicator_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_bar_frobnicator_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_bar_frobnicator_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable = 559s # { 559s # _org_project_bar_frobnicator_skeleton_handle_method_call, 559s # _org_project_bar_frobnicator_skeleton_handle_get_property, 559s # _org_project_bar_frobnicator_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_bar_frobnicator_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_bar_frobnicator_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.Bar.Frobnicator", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_bar_frobnicator_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.Bar.Frobnicator. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL)); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface com.acme.Coyote 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:ComAcmeCoyote 559s # * @title: ComAcmeCoyote 559s # * @short_description: Generated C code for the com.acme.Coyote D-Bus interface 559s # * 559s # * This section contains code for working with the com.acme.Coyote D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _COM_ACME_COYOTE_SURPRISED, 559s # }; 559s # 559s # static unsigned _COM_ACME_COYOTE_SIGNALS[1] = { 0 }; 559s # 559s # /* ---- Introspection data for com.acme.Coyote ---- */ 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Run", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-run", 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Sleep", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-sleep", 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Attack", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-attack", 559s # FALSE 559s # }; 559s # 559s # static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] = 559s # { 559s # &_com_acme_coyote_method_info_run.parent_struct, 559s # &_com_acme_coyote_method_info_sleep.parent_struct, 559s # &_com_acme_coyote_method_info_attack.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Surprised", 559s # NULL, 559s # NULL 559s # }, 559s # "surprised" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] = 559s # { 559s # &_com_acme_coyote_signal_info_surprised.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Mood", 559s # (gchar *) "s", 559s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 559s # NULL 559s # }, 559s # "mood", 559s # FALSE, 559s # TRUE 559s # }; 559s # 559s # static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] = 559s # { 559s # &_com_acme_coyote_property_info_mood.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "com.acme.Coyote", 559s # (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers, 559s # (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers, 559s # (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers, 559s # NULL 559s # }, 559s # "com-acme-coyote", 559s # }; 559s # 559s # 559s # /** 559s # * com_acme_coyote_interface_info: 559s # * 559s # * Gets a machine-readable description of the com.acme.Coyote D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # com_acme_coyote_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin) 559s # { 559s # g_object_class_override_property (klass, property_id_begin++, "mood"); 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # com_acme_coyote_signal_marshal_surprised ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_run ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_sleep ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_attack ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * ComAcmeCoyote: 559s # * 559s # * Abstract interface type for the D-Bus interface com.acme.Coyote. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteIface: 559s # * @parent_iface: The parent interface. 559s # * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal. 559s # * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal. 559s # * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal. 559s # * @get_mood: Getter for the #ComAcmeCoyote:mood property. 559s # * @surprised: Handler for the #ComAcmeCoyote::surprised signal. 559s # * 559s # * Virtual table for the D-Bus interface com.acme.Coyote. 559s # */ 559s # 559s # typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface; 559s # G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT) 559s # 559s # static void 559s # com_acme_coyote_default_init (ComAcmeCoyoteIface *iface) 559s # { 559s # /* GObject signals for incoming D-Bus method calls: */ 559s # /** 559s # * ComAcmeCoyote::handle-run: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Run() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_run() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-run", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_run, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /** 559s # * ComAcmeCoyote::handle-sleep: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Sleep() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-sleep", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_sleep, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /** 559s # * ComAcmeCoyote::handle-attack: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Attack() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_attack() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-attack", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_attack, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * ComAcmeCoyote::surprised: 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "Surprised" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED] = 559s # g_signal_new ("surprised", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised), 559s # NULL, 559s # NULL, 559s # com_acme_coyote_signal_marshal_surprised, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /* GObject properties for D-Bus properties: */ 559s # /** 559s # * ComAcmeCoyote:mood: 559s # * 559s # * Represents the D-Bus property "Mood". 559s # * 559s # * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. 559s # */ 559s # g_object_interface_install_property (iface, 559s # g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_get_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Gets the value of the "Mood" D-Bus property. 559s # * 559s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 559s # * 559s # * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use com_acme_coyote_dup_mood() if on another thread. 559s # * 559s # * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. 559s # */ 559s # const gchar * 559s # com_acme_coyote_get_mood (ComAcmeCoyote *object) 559s # { 559s # g_return_val_if_fail (IS_COM_ACME_COYOTE (object), NULL); 559s # 559s # return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_dup_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Gets a copy of the "Mood" D-Bus property. 559s # * 559s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 559s # * 559s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). 559s # */ 559s # gchar * 559s # com_acme_coyote_dup_mood (ComAcmeCoyote *object) 559s # { 559s # gchar *value; 559s # g_object_get (G_OBJECT (object), "mood", &value, NULL); 559s # return value; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_set_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * @value: The value to set. 559s # * 559s # * Sets the "Mood" D-Bus property to @value. 559s # * 559s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 559s # */ 559s # void 559s # com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value) 559s # { 559s # g_object_set (G_OBJECT (object), "mood", value, NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_emit_surprised: 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Emits the "Surprised" D-Bus signal. 559s # */ 559s # void 559s # com_acme_coyote_emit_surprised ( 559s # ComAcmeCoyote *object) 559s # { 559s # g_signal_emit (object, _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED], 0); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Run() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_run_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_run ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Run", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_run(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_run_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Run() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_run() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_run_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Run", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Sleep() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_sleep ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Sleep", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_sleep(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_sleep_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Sleep() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_sleep() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_sleep_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Sleep", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Attack() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_attack ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Attack", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_attack(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_attack_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Attack() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_attack() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_attack_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Attack", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_run: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Run() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_run ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_sleep: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Sleep() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_sleep ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_attack: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Attack() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_attack ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * ComAcmeCoyoteProxy: 559s # * 559s # * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #ComAcmeCoyoteProxy. 559s # */ 559s # 559s # struct _ComAcmeCoyoteProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (ComAcmeCoyoteProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # com_acme_coyote_proxy_finalize (GObject *object) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_get_property (GObject *object, 559s # guint prop_id, 559s # GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # GVariant *variant; 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 559s # if (info->use_gvariant) 559s # { 559s # g_value_set_variant (value, variant); 559s # } 559s # else 559s # { 559s # if (variant != NULL) 559s # g_dbus_gvariant_to_gvalue (variant, value); 559s # } 559s # if (variant != NULL) 559s # g_variant_unref (variant); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy, 559s # GAsyncResult *res, 559s # gpointer user_data) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info = user_data; 559s # GError *error; 559s # GVariant *_ret; 559s # error = NULL; 559s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 559s # if (!_ret) 559s # { 559s # g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)", 559s # info->parent_struct.name, 559s # error->message, g_quark_to_string (error->domain), error->code); 559s # g_error_free (error); 559s # } 559s # else 559s # { 559s # g_variant_unref (_ret); 559s # } 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_set_property (GObject *object, 559s # guint prop_id, 559s # const GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # GVariant *variant; 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_dbus_proxy_call (G_DBUS_PROXY (object), 559s # "org.freedesktop.DBus.Properties.Set", 559s # g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 559s # g_variant_unref (variant); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_COM_ACME_COYOTE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static const gchar * 559s # com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 559s # GVariant *variant; 559s # const gchar *value = NULL; 559s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood"); 559s # if (variant != NULL) 559s # { 559s # value = g_variant_get_string (variant, NULL); 559s # g_variant_unref (variant); 559s # } 559s # return value; 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ()); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = com_acme_coyote_proxy_finalize; 559s # gobject_class->get_property = com_acme_coyote_proxy_get_property; 559s # gobject_class->set_property = com_acme_coyote_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = com_acme_coyote_proxy_g_signal; 559s # proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed; 559s # 559s # com_acme_coyote_override_properties (gobject_class, 1); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface) 559s # { 559s # iface->get_mood = com_acme_coyote_proxy_get_mood; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # com_acme_coyote_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with com_acme_coyote_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # com_acme_coyote_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with com_acme_coyote_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * ComAcmeCoyoteSkeleton: 559s # * 559s # * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #ComAcmeCoyoteSkeleton. 559s # */ 559s # 559s # struct _ComAcmeCoyoteSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _com_acme_coyote_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_COM_ACME_COYOTE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _com_acme_coyote_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _com_acme_coyote_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable = 559s # { 559s # _com_acme_coyote_skeleton_handle_method_call, 559s # _com_acme_coyote_skeleton_handle_get_property, 559s # _com_acme_coyote_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return com_acme_coyote_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_com_acme_coyote_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _com_acme_coyote_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static gboolean _com_acme_coyote_emit_changed (gpointer user_data); 559s # 559s # static void 559s # com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 559s # gboolean emit_changed = FALSE; 559s # 559s # g_mutex_lock (&skeleton->priv->lock); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # { 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # skeleton->priv->changed_properties_idle_source = NULL; 559s # emit_changed = TRUE; 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # 559s # if (emit_changed) 559s # _com_acme_coyote_emit_changed (skeleton); 559s # } 559s # 559s # static void 559s # _com_acme_coyote_on_signal_surprised ( 559s # ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (ComAcmeCoyoteSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # com_acme_coyote_skeleton_finalize (GObject *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # guint n; 559s # for (n = 0; n < 1; n++) 559s # g_value_unset (&skeleton->priv->properties[n]); 559s # g_free (skeleton->priv->properties); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_get_property (GObject *object, 559s # guint prop_id, 559s # GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # g_mutex_lock (&skeleton->priv->lock); 559s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # } 559s # 559s # static gboolean 559s # _com_acme_coyote_emit_changed (gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GList *l; 559s # GVariantBuilder builder; 559s # GVariantBuilder invalidated_builder; 559s # guint num_changes; 559s # 559s # g_mutex_lock (&skeleton->priv->lock); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 559s # #else 559s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 559s # #endif 559s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 559s # { 559s # ChangedProperty *cp = l->data; 559s # GVariant *variant; 559s # const GValue *cur_value; 559s # 559s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 559s # if (!_g_value_equal (cur_value, &cp->orig_value)) 559s # { 559s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 559s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 559s # g_variant_unref (variant); 559s # num_changes++; 559s # } 559s # } 559s # if (num_changes > 0) 559s # { 559s # GList *connections, *ll; 559s # GVariant *signal_variant; 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote", 559s # &builder, &invalidated_builder)); 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # for (ll = connections; ll != NULL; ll = ll->next) 559s # { 559s # GDBusConnection *connection = ll->data; 559s # 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 559s # "org.freedesktop.DBus.Properties", 559s # "PropertiesChanged", 559s # signal_variant, 559s # NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # else 559s # { 559s # g_variant_builder_clear (&builder); 559s # g_variant_builder_clear (&invalidated_builder); 559s # } 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # skeleton->priv->changed_properties = NULL; 559s # skeleton->priv->changed_properties_idle_source = NULL; 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # return FALSE; 559s # } 559s # 559s # static void 559s # _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 559s # { 559s # ChangedProperty *cp; 559s # GList *l; 559s # cp = NULL; 559s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 559s # { 559s # ChangedProperty *i_cp = l->data; 559s # if (i_cp->info == info) 559s # { 559s # cp = i_cp; 559s # break; 559s # } 559s # } 559s # if (cp == NULL) 559s # { 559s # cp = g_new0 (ChangedProperty, 1); 559s # cp->prop_id = prop_id; 559s # cp->info = info; 559s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 559s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 559s # g_value_copy (orig_value, &cp->orig_value); 559s # } 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_notify (GObject *object, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_mutex_lock (&skeleton->priv->lock); 559s # if (skeleton->priv->changed_properties != NULL && 559s # skeleton->priv->changed_properties_idle_source == NULL) 559s # { 559s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 559s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 559s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 559s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed"); 559s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 559s # g_source_unref (skeleton->priv->changed_properties_idle_source); 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_set_property (GObject *object, 559s # guint prop_id, 559s # const GValue *value, 559s # GParamSpec *pspec) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # g_mutex_lock (&skeleton->priv->lock); 559s # g_object_freeze_notify (object); 559s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 559s # { 559s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 559s # info->emits_changed_signal) 559s # _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 559s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 559s # g_object_notify_by_pspec (object, pspec); 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # g_object_thaw_notify (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # skeleton->priv->properties = g_new0 (GValue, 1); 559s # g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); 559s # } 559s # 559s # static const gchar * 559s # com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # const gchar *value; 559s # g_mutex_lock (&skeleton->priv->lock); 559s # value = g_marshal_value_peek_string (&(skeleton->priv->properties[0])); 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # return value; 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = com_acme_coyote_skeleton_finalize; 559s # gobject_class->get_property = com_acme_coyote_skeleton_get_property; 559s # gobject_class->set_property = com_acme_coyote_skeleton_set_property; 559s # gobject_class->notify = com_acme_coyote_skeleton_notify; 559s # 559s # 559s # com_acme_coyote_override_properties (gobject_class, 1); 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface) 559s # { 559s # iface->surprised = _com_acme_coyote_on_signal_surprised; 559s # iface->get_mood = com_acme_coyote_skeleton_get_mood; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface com.acme.Coyote. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_skeleton_new (void) 559s # { 559s # return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL)); 559s # } 559s # Error: 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpmr69yqjy/tmpkk71bvit2.xml', '/tmp/tmpmr69yqjy/tmpltbxxuet1.xml', '--output', '-', '--body'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifdef HAVE_CONFIG_H 559s # # include "config.h" 559s # #endif 559s # 559s # #include 559s # #ifdef G_OS_UNIX 559s # # include 559s # #endif 559s # 559s # #ifdef G_ENABLE_DEBUG 559s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 559s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 559s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 559s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 559s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 559s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 559s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 559s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 559s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 559s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 559s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 559s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 559s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 559s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 559s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 559s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 559s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 559s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 559s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 559s # #else /* !G_ENABLE_DEBUG */ 559s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 559s # * Do not access GValues directly in your code. Instead, use the 559s # * g_value_get_*() functions 559s # */ 559s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 559s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 559s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 559s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 559s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 559s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 559s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 559s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 559s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 559s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 559s # #endif /* !G_ENABLE_DEBUG */ 559s # 559s # typedef struct 559s # { 559s # GDBusArgInfo parent_struct; 559s # gboolean use_gvariant; 559s # } _ExtendedGDBusArgInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusMethodInfo parent_struct; 559s # const gchar *signal_name; 559s # gboolean pass_fdlist; 559s # } _ExtendedGDBusMethodInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusSignalInfo parent_struct; 559s # const gchar *signal_name; 559s # } _ExtendedGDBusSignalInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusPropertyInfo parent_struct; 559s # const gchar *hyphen_name; 559s # guint use_gvariant : 1; 559s # guint emits_changed_signal : 1; 559s # } _ExtendedGDBusPropertyInfo; 559s # 559s # typedef struct 559s # { 559s # GDBusInterfaceInfo parent_struct; 559s # const gchar *hyphen_name; 559s # } _ExtendedGDBusInterfaceInfo; 559s # 559s # typedef struct 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # guint prop_id; 559s # GValue orig_value; /* the value before the change */ 559s # } ChangedProperty; 559s # 559s # static void 559s # _changed_property_free (ChangedProperty *data) 559s # { 559s # g_value_unset (&data->orig_value); 559s # g_free (data); 559s # } 559s # 559s # static gboolean 559s # _g_strv_equal0 (gchar **a, gchar **b) 559s # { 559s # gboolean ret = FALSE; 559s # guint n; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # if (g_strv_length (a) != g_strv_length (b)) 559s # goto out; 559s # for (n = 0; a[n] != NULL; n++) 559s # if (g_strcmp0 (a[n], b[n]) != 0) 559s # goto out; 559s # ret = TRUE; 559s # out: 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _g_variant_equal0 (GVariant *a, GVariant *b) 559s # { 559s # gboolean ret = FALSE; 559s # if (a == NULL && b == NULL) 559s # { 559s # ret = TRUE; 559s # goto out; 559s # } 559s # if (a == NULL || b == NULL) 559s # goto out; 559s # ret = g_variant_equal (a, b); 559s # out: 559s # return ret; 559s # } 559s # 559s # G_GNUC_UNUSED static gboolean 559s # _g_value_equal (const GValue *a, const GValue *b) 559s # { 559s # gboolean ret = FALSE; 559s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 559s # switch (G_VALUE_TYPE (a)) 559s # { 559s # case G_TYPE_BOOLEAN: 559s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 559s # break; 559s # case G_TYPE_UCHAR: 559s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 559s # break; 559s # case G_TYPE_INT: 559s # ret = (g_value_get_int (a) == g_value_get_int (b)); 559s # break; 559s # case G_TYPE_UINT: 559s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 559s # break; 559s # case G_TYPE_INT64: 559s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 559s # break; 559s # case G_TYPE_UINT64: 559s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 559s # break; 559s # case G_TYPE_DOUBLE: 559s # { 559s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 559s # gdouble da = g_value_get_double (a); 559s # gdouble db = g_value_get_double (b); 559s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 559s # } 559s # break; 559s # case G_TYPE_STRING: 559s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 559s # break; 559s # case G_TYPE_VARIANT: 559s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 559s # break; 559s # default: 559s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 559s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 559s # else 559s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 559s # break; 559s # } 559s # return ret; 559s # } 559s # 559s # static void 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint G_GNUC_UNUSED, 559s # void *marshal_data) 559s # { 559s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 559s # (void *data1, 559s # GDBusMethodInvocation *arg_method_invocation, 559s # void *data2); 559s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 559s # GCClosure *cc = (GCClosure*) closure; 559s # void *data1, *data2; 559s # gboolean v_return; 559s # 559s # g_return_if_fail (return_value != NULL); 559s # g_return_if_fail (n_param_values == 2); 559s # 559s # if (G_CCLOSURE_SWAP_DATA (closure)) 559s # { 559s # data1 = closure->data; 559s # data2 = g_value_peek_pointer (param_values + 0); 559s # } 559s # else 559s # { 559s # data1 = g_value_peek_pointer (param_values + 0); 559s # data2 = closure->data; 559s # } 559s # 559s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 559s # (marshal_data ? marshal_data : cc->callback); 559s # 559s # v_return = 559s # callback (data1, 559s # g_marshal_value_peek_object (param_values + 1), 559s # data2); 559s # 559s # g_value_set_boolean (return_value, v_return); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface org.project.Bar.Frobnicator 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:OrgProjectBarFrobnicator 559s # * @title: OrgProjectBarFrobnicator 559s # * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface 559s # * 559s # * This section contains code for working with the org.project.Bar.Frobnicator D-Bus interface in C. 559s # */ 559s # 559s # /* ---- Introspection data for org.project.Bar.Frobnicator ---- */ 559s # 559s # static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method = 559s # { 559s # { 559s # -1, 559s # (gchar *) "RandomMethod", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-random-method", 559s # FALSE 559s # }; 559s # 559s # static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] = 559s # { 559s # &_org_project_bar_frobnicator_method_info_random_method.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "org.project.Bar.Frobnicator", 559s # (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers, 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "org-project-bar-frobnicator", 559s # }; 559s # 559s # 559s # /** 559s # * org_project_bar_frobnicator_interface_info: 559s # * 559s # * Gets a machine-readable description of the org.project.Bar.Frobnicator D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # org_project_bar_frobnicator_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 559s # { 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # org_project_bar_frobnicator_method_marshal_random_method ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * OrgProjectBarFrobnicator: 559s # * 559s # * Abstract interface type for the D-Bus interface org.project.Bar.Frobnicator. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorIface: 559s # * @parent_iface: The parent interface. 559s # * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal. 559s # * 559s # * Virtual table for the D-Bus interface org.project.Bar.Frobnicator. 559s # */ 559s # 559s # typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface; 559s # G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT) 559s # 559s # static void 559s # org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface) 559s # { 559s # /* GObject signals for incoming D-Bus method calls: */ 559s # /** 559s # * OrgProjectBarFrobnicator::handle-random-method: 559s # * @object: A #OrgProjectBarFrobnicator. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the RandomMethod() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_bar_frobnicator_complete_random_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-random-method", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # org_project_bar_frobnicator_method_marshal_random_method, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the RandomMethod() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # org_project_bar_frobnicator_call_random_method ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "RandomMethod", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method_finish: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_call_random_method(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # org_project_bar_frobnicator_call_random_method_finish ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_call_random_method_sync: 559s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the RandomMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # org_project_bar_frobnicator_call_random_method_sync ( 559s # OrgProjectBarFrobnicator *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "RandomMethod", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_complete_random_method: 559s # * @object: A #OrgProjectBarFrobnicator. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the RandomMethod() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # org_project_bar_frobnicator_complete_random_method ( 559s # OrgProjectBarFrobnicator *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorProxy: 559s # * 559s # * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectBarFrobnicatorProxy. 559s # */ 559s # 559s # struct _OrgProjectBarFrobnicatorProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_bar_frobnicator_proxy_finalize (GObject *object) 559s # { 559s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_get_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_set_property (GObject *object G_GNUC_UNUSED, 559s # guint prop_id G_GNUC_UNUSED, 559s # const GValue *value G_GNUC_UNUSED, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ()); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_bar_frobnicator_proxy_finalize; 559s # gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property; 559s # gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal; 559s # proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_bar_frobnicator_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # org_project_bar_frobnicator_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL); 559s # if (ret != NULL) 559s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorSkeleton: 559s # * 559s # * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * OrgProjectBarFrobnicatorSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #OrgProjectBarFrobnicatorSkeleton. 559s # */ 559s # 559s # struct _OrgProjectBarFrobnicatorSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _org_project_bar_frobnicator_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _org_project_bar_frobnicator_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _org_project_bar_frobnicator_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable = 559s # { 559s # _org_project_bar_frobnicator_skeleton_handle_method_call, 559s # _org_project_bar_frobnicator_skeleton_handle_get_property, 559s # _org_project_bar_frobnicator_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return org_project_bar_frobnicator_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _org_project_bar_frobnicator_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.Bar.Frobnicator", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # org_project_bar_frobnicator_skeleton_finalize (GObject *object) 559s # { 559s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize; 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 559s # { 559s # } 559s # 559s # /** 559s # * org_project_bar_frobnicator_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface org.project.Bar.Frobnicator. 559s # * 559s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object. 559s # */ 559s # OrgProjectBarFrobnicator * 559s # org_project_bar_frobnicator_skeleton_new (void) 559s # { 559s # return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL)); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ 559s # * Code for interface com.acme.Coyote 559s # * ------------------------------------------------------------------------ 559s # */ 559s # 559s # /** 559s # * SECTION:ComAcmeCoyote 559s # * @title: ComAcmeCoyote 559s # * @short_description: Generated C code for the com.acme.Coyote D-Bus interface 559s # * 559s # * This section contains code for working with the com.acme.Coyote D-Bus interface in C. 559s # */ 559s # 559s # enum 559s # { 559s # _COM_ACME_COYOTE_SURPRISED, 559s # }; 559s # 559s # static unsigned _COM_ACME_COYOTE_SIGNALS[1] = { 0 }; 559s # 559s # /* ---- Introspection data for com.acme.Coyote ---- */ 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Run", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-run", 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Sleep", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-sleep", 559s # FALSE 559s # }; 559s # 559s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Attack", 559s # NULL, 559s # NULL, 559s # NULL 559s # }, 559s # "handle-attack", 559s # FALSE 559s # }; 559s # 559s # static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] = 559s # { 559s # &_com_acme_coyote_method_info_run.parent_struct, 559s # &_com_acme_coyote_method_info_sleep.parent_struct, 559s # &_com_acme_coyote_method_info_attack.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Surprised", 559s # NULL, 559s # NULL 559s # }, 559s # "surprised" 559s # }; 559s # 559s # static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] = 559s # { 559s # &_com_acme_coyote_signal_info_surprised.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood = 559s # { 559s # { 559s # -1, 559s # (gchar *) "Mood", 559s # (gchar *) "s", 559s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 559s # NULL 559s # }, 559s # "mood", 559s # FALSE, 559s # TRUE 559s # }; 559s # 559s # static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] = 559s # { 559s # &_com_acme_coyote_property_info_mood.parent_struct, 559s # NULL 559s # }; 559s # 559s # static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info = 559s # { 559s # { 559s # -1, 559s # (gchar *) "com.acme.Coyote", 559s # (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers, 559s # (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers, 559s # (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers, 559s # NULL 559s # }, 559s # "com-acme-coyote", 559s # }; 559s # 559s # 559s # /** 559s # * com_acme_coyote_interface_info: 559s # * 559s # * Gets a machine-readable description of the com.acme.Coyote D-Bus interface. 559s # * 559s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 559s # */ 559s # GDBusInterfaceInfo * 559s # com_acme_coyote_interface_info (void) 559s # { 559s # return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_override_properties: 559s # * @klass: The class structure for a #GObject derived class. 559s # * @property_id_begin: The property id to assign to the first overridden property. 559s # * 559s # * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class. 559s # * The properties are overridden in the order they are defined. 559s # * 559s # * Returns: The last property id. 559s # */ 559s # guint 559s # com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin) 559s # { 559s # g_object_class_override_property (klass, property_id_begin++, "mood"); 559s # return property_id_begin - 1; 559s # } 559s # 559s # 559s # inline static void 559s # com_acme_coyote_signal_marshal_surprised ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # g_cclosure_marshal_VOID__VOID (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_run ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_sleep ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # inline static void 559s # com_acme_coyote_method_marshal_attack ( 559s # GClosure *closure, 559s # GValue *return_value, 559s # unsigned int n_param_values, 559s # const GValue *param_values, 559s # void *invocation_hint, 559s # void *marshal_data) 559s # { 559s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 559s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 559s # } 559s # 559s # 559s # /** 559s # * ComAcmeCoyote: 559s # * 559s # * Abstract interface type for the D-Bus interface com.acme.Coyote. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteIface: 559s # * @parent_iface: The parent interface. 559s # * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal. 559s # * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal. 559s # * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal. 559s # * @get_mood: Getter for the #ComAcmeCoyote:mood property. 559s # * @surprised: Handler for the #ComAcmeCoyote::surprised signal. 559s # * 559s # * Virtual table for the D-Bus interface com.acme.Coyote. 559s # */ 559s # 559s # typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface; 559s # G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT) 559s # 559s # static void 559s # com_acme_coyote_default_init (ComAcmeCoyoteIface *iface) 559s # { 559s # /* GObject signals for incoming D-Bus method calls: */ 559s # /** 559s # * ComAcmeCoyote::handle-run: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Run() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_run() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-run", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_run, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /** 559s # * ComAcmeCoyote::handle-sleep: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Sleep() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-sleep", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_sleep, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /** 559s # * ComAcmeCoyote::handle-attack: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: A #GDBusMethodInvocation. 559s # * 559s # * Signal emitted when a remote caller is invoking the Attack() D-Bus method. 559s # * 559s # * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_attack() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. 559s # * 559s # * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. 559s # */ 559s # g_signal_new ("handle-attack", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack), 559s # g_signal_accumulator_true_handled, 559s # NULL, 559s # com_acme_coyote_method_marshal_attack, 559s # G_TYPE_BOOLEAN, 559s # 1, 559s # G_TYPE_DBUS_METHOD_INVOCATION); 559s # 559s # /* GObject signals for received D-Bus signals: */ 559s # /** 559s # * ComAcmeCoyote::surprised: 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * On the client-side, this signal is emitted whenever the D-Bus signal "Surprised" is received. 559s # * 559s # * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. 559s # */ 559s # _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED] = 559s # g_signal_new ("surprised", 559s # G_TYPE_FROM_INTERFACE (iface), 559s # G_SIGNAL_RUN_LAST, 559s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised), 559s # NULL, 559s # NULL, 559s # com_acme_coyote_signal_marshal_surprised, 559s # G_TYPE_NONE, 559s # 0); 559s # 559s # /* GObject properties for D-Bus properties: */ 559s # /** 559s # * ComAcmeCoyote:mood: 559s # * 559s # * Represents the D-Bus property "Mood". 559s # * 559s # * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. 559s # */ 559s # g_object_interface_install_property (iface, 559s # g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_get_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Gets the value of the "Mood" D-Bus property. 559s # * 559s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 559s # * 559s # * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use com_acme_coyote_dup_mood() if on another thread. 559s # * 559s # * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. 559s # */ 559s # const gchar * 559s # com_acme_coyote_get_mood (ComAcmeCoyote *object) 559s # { 559s # g_return_val_if_fail (IS_COM_ACME_COYOTE (object), NULL); 559s # 559s # return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_dup_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Gets a copy of the "Mood" D-Bus property. 559s # * 559s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 559s # * 559s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). 559s # */ 559s # gchar * 559s # com_acme_coyote_dup_mood (ComAcmeCoyote *object) 559s # { 559s # gchar *value; 559s # g_object_get (G_OBJECT (object), "mood", &value, NULL); 559s # return value; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_set_mood: (skip) 559s # * @object: A #ComAcmeCoyote. 559s # * @value: The value to set. 559s # * 559s # * Sets the "Mood" D-Bus property to @value. 559s # * 559s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 559s # */ 559s # void 559s # com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value) 559s # { 559s # g_object_set (G_OBJECT (object), "mood", value, NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_emit_surprised: 559s # * @object: A #ComAcmeCoyote. 559s # * 559s # * Emits the "Surprised" D-Bus signal. 559s # */ 559s # void 559s # com_acme_coyote_emit_surprised ( 559s # ComAcmeCoyote *object) 559s # { 559s # g_signal_emit (object, _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED], 0); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Run() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_run_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_run ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Run", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_run(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_run_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_run_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Run() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_run() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_run_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Run", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Sleep() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_sleep ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Sleep", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_sleep(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_sleep_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_sleep_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Sleep() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_sleep() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_sleep_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Sleep", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously invokes the Attack() D-Bus method on @proxy. 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method. 559s # */ 559s # void 559s # com_acme_coyote_call_attack ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 559s # "Attack", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # callback, 559s # user_data); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack_finish: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack(). 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Finishes an operation started with com_acme_coyote_call_attack(). 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_attack_finish ( 559s # ComAcmeCoyote *proxy, 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_call_attack_sync: 559s # * @proxy: A #ComAcmeCoyoteProxy. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL. 559s # * 559s # * Synchronously invokes the Attack() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_call_attack() for the asynchronous version of this method. 559s # * 559s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 559s # */ 559s # gboolean 559s # com_acme_coyote_call_attack_sync ( 559s # ComAcmeCoyote *proxy, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GVariant *_ret; 559s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 559s # "Attack", 559s # g_variant_new ("()"), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # cancellable, 559s # error); 559s # if (_ret == NULL) 559s # goto _out; 559s # g_variant_get (_ret, 559s # "()"); 559s # g_variant_unref (_ret); 559s # _out: 559s # return _ret != NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_run: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Run() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_run ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_sleep: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Sleep() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_sleep ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_complete_attack: 559s # * @object: A #ComAcmeCoyote. 559s # * @invocation: (transfer full): A #GDBusMethodInvocation. 559s # * 559s # * Helper function used in service implementations to finish handling invocations of the Attack() D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. 559s # * 559s # * This method will free @invocation, you cannot use it afterwards. 559s # */ 559s # void 559s # com_acme_coyote_complete_attack ( 559s # ComAcmeCoyote *object G_GNUC_UNUSED, 559s # GDBusMethodInvocation *invocation) 559s # { 559s # g_dbus_method_invocation_return_value (invocation, 559s # g_variant_new ("()")); 559s # } 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * ComAcmeCoyoteProxy: 559s # * 559s # * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteProxyClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #ComAcmeCoyoteProxy. 559s # */ 559s # 559s # struct _ComAcmeCoyoteProxyPrivate 559s # { 559s # GData *qdata; 559s # }; 559s # 559s # static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 559s # G_ADD_PRIVATE (ComAcmeCoyoteProxy) 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 559s # 559s # #endif 559s # static void 559s # com_acme_coyote_proxy_finalize (GObject *object) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 559s # g_datalist_clear (&proxy->priv->qdata); 559s # G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_get_property (GObject *object, 559s # guint prop_id, 559s # GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # GVariant *variant; 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 559s # if (info->use_gvariant) 559s # { 559s # g_value_set_variant (value, variant); 559s # } 559s # else 559s # { 559s # if (variant != NULL) 559s # g_dbus_gvariant_to_gvalue (variant, value); 559s # } 559s # if (variant != NULL) 559s # g_variant_unref (variant); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy, 559s # GAsyncResult *res, 559s # gpointer user_data) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info = user_data; 559s # GError *error; 559s # GVariant *_ret; 559s # error = NULL; 559s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 559s # if (!_ret) 559s # { 559s # g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)", 559s # info->parent_struct.name, 559s # error->message, g_quark_to_string (error->domain), error->code); 559s # g_error_free (error); 559s # } 559s # else 559s # { 559s # g_variant_unref (_ret); 559s # } 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_set_property (GObject *object, 559s # guint prop_id, 559s # const GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # GVariant *variant; 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_dbus_proxy_call (G_DBUS_PROXY (object), 559s # "org.freedesktop.DBus.Properties.Set", 559s # g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant), 559s # G_DBUS_CALL_FLAGS_NONE, 559s # -1, 559s # NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 559s # g_variant_unref (variant); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_g_signal (GDBusProxy *proxy, 559s # const gchar *sender_name G_GNUC_UNUSED, 559s # const gchar *signal_name, 559s # GVariant *parameters) 559s # { 559s # _ExtendedGDBusSignalInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # gsize n; 559s # guint signal_id; 559s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name); 559s # if (info == NULL) 559s # return; 559s # num_params = g_variant_n_children (parameters); 559s # paramv = g_new0 (GValue, num_params + 1); 559s # g_value_init (¶mv[0], TYPE_COM_ACME_COYOTE); 559s # g_value_set_object (¶mv[0], proxy); 559s # g_variant_iter_init (&iter, parameters); 559s # n = 1; 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 559s # g_signal_emitv (paramv, signal_id, 0, NULL); 559s # for (n = 0; n < num_params + 1; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy, 559s # GVariant *changed_properties, 559s # const gchar *const *invalidated_properties) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy); 559s # guint n; 559s # const gchar *key; 559s # GVariantIter *iter; 559s # _ExtendedGDBusPropertyInfo *info; 559s # g_variant_get (changed_properties, "a{sv}", &iter); 559s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key); 559s # g_datalist_remove_data (&proxy->priv->qdata, key); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # g_variant_iter_free (iter); 559s # for (n = 0; invalidated_properties[n] != NULL; n++) 559s # { 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]); 559s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 559s # if (info != NULL) 559s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 559s # } 559s # } 559s # 559s # static const gchar * 559s # com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 559s # GVariant *variant; 559s # const gchar *value = NULL; 559s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood"); 559s # if (variant != NULL) 559s # { 559s # value = g_variant_get_string (variant, NULL); 559s # g_variant_unref (variant); 559s # } 559s # return value; 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy); 559s # #else 559s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate); 559s # #endif 559s # 559s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ()); 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusProxyClass *proxy_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = com_acme_coyote_proxy_finalize; 559s # gobject_class->get_property = com_acme_coyote_proxy_get_property; 559s # gobject_class->set_property = com_acme_coyote_proxy_set_property; 559s # 559s # proxy_class = G_DBUS_PROXY_CLASS (klass); 559s # proxy_class->g_signal = com_acme_coyote_proxy_g_signal; 559s # proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed; 559s # 559s # com_acme_coyote_override_properties (gobject_class, 1); 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface) 559s # { 559s # iface->get_mood = com_acme_coyote_proxy_get_mood; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Asynchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new() for more details. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # com_acme_coyote_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with com_acme_coyote_proxy_new(). 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_sync: 559s # * @connection: A #GDBusConnection. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Synchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new_sync() for more details. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 559s # * @user_data: User data to pass to @callback. 559s # * 559s # * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()). 559s # * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation. 559s # * 559s # * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 559s # */ 559s # void 559s # com_acme_coyote_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data) 559s # { 559s # g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus_finish: 559s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus(). 559s # * @error: Return location for error or %NULL 559s # * 559s # * Finishes an operation started with com_acme_coyote_proxy_new_for_bus(). 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error) 559s # { 559s # GObject *ret; 559s # GObject *source_object; 559s # source_object = g_async_result_get_source_object (res); 559s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 559s # g_object_unref (source_object); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_proxy_new_for_bus_sync: 559s # * @bus_type: A #GBusType. 559s # * @flags: Flags from the #GDBusProxyFlags enumeration. 559s # * @name: A bus name (well-known or unique). 559s # * @object_path: An object path. 559s # * @cancellable: (nullable): A #GCancellable or %NULL. 559s # * @error: Return location for error or %NULL 559s # * 559s # * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 559s # * 559s # * The calling thread is blocked until a reply is received. 559s # * 559s # * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error) 559s # { 559s # GInitable *ret; 559s # ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL); 559s # if (ret != NULL) 559s # return COM_ACME_COYOTE (ret); 559s # else 559s # return NULL; 559s # } 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # 559s # /** 559s # * ComAcmeCoyoteSkeleton: 559s # * 559s # * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API. 559s # */ 559s # 559s # /** 559s # * ComAcmeCoyoteSkeletonClass: 559s # * @parent_class: The parent class. 559s # * 559s # * Class structure for #ComAcmeCoyoteSkeleton. 559s # */ 559s # 559s # struct _ComAcmeCoyoteSkeletonPrivate 559s # { 559s # GValue *properties; 559s # GList *changed_properties; 559s # GSource *changed_properties_idle_source; 559s # GMainContext *context; 559s # GMutex lock; 559s # }; 559s # 559s # static void 559s # _com_acme_coyote_skeleton_handle_method_call ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name, 559s # const gchar *method_name, 559s # GVariant *parameters, 559s # GDBusMethodInvocation *invocation, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # _ExtendedGDBusMethodInfo *info; 559s # GVariantIter iter; 559s # GVariant *child; 559s # GValue *paramv; 559s # gsize num_params; 559s # guint num_extra; 559s # gsize n; 559s # guint signal_id; 559s # GValue return_value = G_VALUE_INIT; 559s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 559s # g_assert (info != NULL); 559s # num_params = g_variant_n_children (parameters); 559s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 559s # n = 0; 559s # g_value_init (¶mv[n], TYPE_COM_ACME_COYOTE); 559s # g_value_set_object (¶mv[n++], skeleton); 559s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 559s # g_value_set_object (¶mv[n++], invocation); 559s # if (info->pass_fdlist) 559s # { 559s # #ifdef G_OS_UNIX 559s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 559s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 559s # #else 559s # g_assert_not_reached (); 559s # #endif 559s # } 559s # g_variant_iter_init (&iter, parameters); 559s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 559s # { 559s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 559s # if (arg_info->use_gvariant) 559s # { 559s # g_value_init (¶mv[n], G_TYPE_VARIANT); 559s # g_value_set_variant (¶mv[n], child); 559s # n++; 559s # } 559s # else 559s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 559s # g_variant_unref (child); 559s # } 559s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 559s # g_value_init (&return_value, G_TYPE_BOOLEAN); 559s # g_signal_emitv (paramv, signal_id, 0, &return_value); 559s # if (!g_value_get_boolean (&return_value)) 559s # g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); 559s # g_value_unset (&return_value); 559s # for (n = 0; n < num_params + num_extra; n++) 559s # g_value_unset (¶mv[n]); 559s # g_free (paramv); 559s # } 559s # 559s # static GVariant * 559s # _com_acme_coyote_skeleton_handle_get_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # GVariant *ret; 559s # ret = NULL; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # g_value_init (&value, pspec->value_type); 559s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 559s # g_value_unset (&value); 559s # } 559s # return ret; 559s # } 559s # 559s # static gboolean 559s # _com_acme_coyote_skeleton_handle_set_property ( 559s # GDBusConnection *connection G_GNUC_UNUSED, 559s # const gchar *sender G_GNUC_UNUSED, 559s # const gchar *object_path G_GNUC_UNUSED, 559s # const gchar *interface_name G_GNUC_UNUSED, 559s # const gchar *property_name, 559s # GVariant *variant, 559s # GError **error, 559s # gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GValue value = G_VALUE_INIT; 559s # GParamSpec *pspec; 559s # _ExtendedGDBusPropertyInfo *info; 559s # gboolean ret; 559s # ret = FALSE; 559s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 559s # g_assert (info != NULL); 559s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 559s # if (pspec == NULL) 559s # { 559s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 559s # } 559s # else 559s # { 559s # if (info->use_gvariant) 559s # g_value_set_variant (&value, variant); 559s # else 559s # g_dbus_gvariant_to_gvalue (variant, &value); 559s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 559s # g_value_unset (&value); 559s # ret = TRUE; 559s # } 559s # return ret; 559s # } 559s # 559s # static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable = 559s # { 559s # _com_acme_coyote_skeleton_handle_method_call, 559s # _com_acme_coyote_skeleton_handle_get_property, 559s # _com_acme_coyote_skeleton_handle_set_property, 559s # {NULL} 559s # }; 559s # 559s # static GDBusInterfaceInfo * 559s # com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return com_acme_coyote_interface_info (); 559s # } 559s # 559s # static GDBusInterfaceVTable * 559s # com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 559s # { 559s # return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable; 559s # } 559s # 559s # static GVariant * 559s # com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 559s # 559s # GVariantBuilder builder; 559s # guint n; 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #else 559s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 559s # #endif 559s # if (_com_acme_coyote_interface_info.parent_struct.properties == NULL) 559s # goto out; 559s # for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++) 559s # { 559s # GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n]; 559s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 559s # { 559s # GVariant *value; 559s # value = _com_acme_coyote_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", info->name, NULL, skeleton); 559s # if (value != NULL) 559s # { 559s # g_variant_take_ref (value); 559s # g_variant_builder_add (&builder, "{sv}", info->name, value); 559s # g_variant_unref (value); 559s # } 559s # } 559s # } 559s # out: 559s # return g_variant_builder_end (&builder); 559s # } 559s # 559s # static gboolean _com_acme_coyote_emit_changed (gpointer user_data); 559s # 559s # static void 559s # com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 559s # gboolean emit_changed = FALSE; 559s # 559s # g_mutex_lock (&skeleton->priv->lock); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # { 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # skeleton->priv->changed_properties_idle_source = NULL; 559s # emit_changed = TRUE; 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # 559s # if (emit_changed) 559s # _com_acme_coyote_emit_changed (skeleton); 559s # } 559s # 559s # static void 559s # _com_acme_coyote_on_signal_surprised ( 559s # ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # 559s # GList *connections, *l; 559s # GVariant *signal_variant; 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # 559s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 559s # for (l = connections; l != NULL; l = l->next) 559s # { 559s # GDBusConnection *connection = l->data; 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised", 559s # signal_variant, NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # 559s # static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_ADD_PRIVATE (ComAcmeCoyoteSkeleton) 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 559s # 559s # #else 559s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 559s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 559s # 559s # #endif 559s # static void 559s # com_acme_coyote_skeleton_finalize (GObject *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # guint n; 559s # for (n = 0; n < 1; n++) 559s # g_value_unset (&skeleton->priv->properties[n]); 559s # g_free (skeleton->priv->properties); 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # if (skeleton->priv->changed_properties_idle_source != NULL) 559s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 559s # g_main_context_unref (skeleton->priv->context); 559s # g_mutex_clear (&skeleton->priv->lock); 559s # G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_get_property (GObject *object, 559s # guint prop_id, 559s # GValue *value, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # g_mutex_lock (&skeleton->priv->lock); 559s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # } 559s # 559s # static gboolean 559s # _com_acme_coyote_emit_changed (gpointer user_data) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 559s # GList *l; 559s # GVariantBuilder builder; 559s # GVariantBuilder invalidated_builder; 559s # guint num_changes; 559s # 559s # g_mutex_lock (&skeleton->priv->lock); 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 559s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 559s # #else 559s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 559s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 559s # #endif 559s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 559s # { 559s # ChangedProperty *cp = l->data; 559s # GVariant *variant; 559s # const GValue *cur_value; 559s # 559s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 559s # if (!_g_value_equal (cur_value, &cp->orig_value)) 559s # { 559s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 559s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 559s # g_variant_unref (variant); 559s # num_changes++; 559s # } 559s # } 559s # if (num_changes > 0) 559s # { 559s # GList *connections, *ll; 559s # GVariant *signal_variant; 559s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote", 559s # &builder, &invalidated_builder)); 559s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 559s # for (ll = connections; ll != NULL; ll = ll->next) 559s # { 559s # GDBusConnection *connection = ll->data; 559s # 559s # g_dbus_connection_emit_signal (connection, 559s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 559s # "org.freedesktop.DBus.Properties", 559s # "PropertiesChanged", 559s # signal_variant, 559s # NULL); 559s # } 559s # g_variant_unref (signal_variant); 559s # g_list_free_full (connections, g_object_unref); 559s # } 559s # else 559s # { 559s # g_variant_builder_clear (&builder); 559s # g_variant_builder_clear (&invalidated_builder); 559s # } 559s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 559s # skeleton->priv->changed_properties = NULL; 559s # skeleton->priv->changed_properties_idle_source = NULL; 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # return FALSE; 559s # } 559s # 559s # static void 559s # _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 559s # { 559s # ChangedProperty *cp; 559s # GList *l; 559s # cp = NULL; 559s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 559s # { 559s # ChangedProperty *i_cp = l->data; 559s # if (i_cp->info == info) 559s # { 559s # cp = i_cp; 559s # break; 559s # } 559s # } 559s # if (cp == NULL) 559s # { 559s # cp = g_new0 (ChangedProperty, 1); 559s # cp->prop_id = prop_id; 559s # cp->info = info; 559s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 559s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 559s # g_value_copy (orig_value, &cp->orig_value); 559s # } 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_notify (GObject *object, 559s # GParamSpec *pspec G_GNUC_UNUSED) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_mutex_lock (&skeleton->priv->lock); 559s # if (skeleton->priv->changed_properties != NULL && 559s # skeleton->priv->changed_properties_idle_source == NULL) 559s # { 559s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 559s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 559s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 559s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed"); 559s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 559s # g_source_unref (skeleton->priv->changed_properties_idle_source); 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_set_property (GObject *object, 559s # guint prop_id, 559s # const GValue *value, 559s # GParamSpec *pspec) 559s # { 559s # const _ExtendedGDBusPropertyInfo *info; 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # g_assert (prop_id != 0 && prop_id - 1 < 1); 559s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 559s # g_mutex_lock (&skeleton->priv->lock); 559s # g_object_freeze_notify (object); 559s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 559s # { 559s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 559s # info->emits_changed_signal) 559s # _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 559s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 559s # g_object_notify_by_pspec (object, pspec); 559s # } 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # g_object_thaw_notify (object); 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton) 559s # { 559s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 559s # skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton); 559s # #else 559s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate); 559s # #endif 559s # 559s # g_mutex_init (&skeleton->priv->lock); 559s # skeleton->priv->context = g_main_context_ref_thread_default (); 559s # skeleton->priv->properties = g_new0 (GValue, 1); 559s # g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); 559s # } 559s # 559s # static const gchar * 559s # com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object) 559s # { 559s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 559s # const gchar *value; 559s # g_mutex_lock (&skeleton->priv->lock); 559s # value = g_marshal_value_peek_string (&(skeleton->priv->properties[0])); 559s # g_mutex_unlock (&skeleton->priv->lock); 559s # return value; 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass) 559s # { 559s # GObjectClass *gobject_class; 559s # GDBusInterfaceSkeletonClass *skeleton_class; 559s # 559s # gobject_class = G_OBJECT_CLASS (klass); 559s # gobject_class->finalize = com_acme_coyote_skeleton_finalize; 559s # gobject_class->get_property = com_acme_coyote_skeleton_get_property; 559s # gobject_class->set_property = com_acme_coyote_skeleton_set_property; 559s # gobject_class->notify = com_acme_coyote_skeleton_notify; 559s # 559s # 559s # com_acme_coyote_override_properties (gobject_class, 1); 559s # 559s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 559s # skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info; 559s # skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties; 559s # skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush; 559s # skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable; 559s # 559s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 559s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate)); 559s # #endif 559s # } 559s # 559s # static void 559s # com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface) 559s # { 559s # iface->surprised = _com_acme_coyote_on_signal_surprised; 559s # iface->get_mood = com_acme_coyote_skeleton_get_mood; 559s # } 559s # 559s # /** 559s # * com_acme_coyote_skeleton_new: 559s # * 559s # * Creates a skeleton object for the D-Bus interface com.acme.Coyote. 559s # * 559s # * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object. 559s # */ 559s # ComAcmeCoyote * 559s # com_acme_coyote_skeleton_new (void) 559s # { 559s # return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL)); 559s # } 559s # Error: 559s ok 39 __main__.TestCodegen.test_unix_fd_types_and_annotations 559s # gdbus-codegen: /usr/bin/gdbus-codegen 559s # tmpdir: /tmp/tmplx98y08g 559s # /tmp/tmplx98y08g/tmpjmtd6j2k.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmplx98y08g/tmpjmtd6j2k.xml', '--output', '-', '--header'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for FDPassing */ 559s # 559s # #define TYPE_FDPASSING (fdpassing_get_type ()) 559s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 559s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 559s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 559s # 559s # struct _FDPassing; 559s # typedef struct _FDPassing FDPassing; 559s # typedef struct _FDPassingIface FDPassingIface; 559s # 559s # struct _FDPassingIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # gboolean (*handle_hello_fd) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *arg_greeting); 559s # 559s # gboolean (*handle_no_annotation) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale); 559s # 559s # gboolean (*handle_no_annotation_nested) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *arg_files); 559s # 559s # }; 559s # 559s # GType fdpassing_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *fdpassing_interface_info (void); 559s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void fdpassing_complete_hello_fd ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *response); 559s # 559s # void fdpassing_complete_no_annotation ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *response, 559s # const gchar *response_locale); 559s # 559s # void fdpassing_complete_no_annotation_nested ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void fdpassing_call_hello_fd ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GUnixFDList *fd_list, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_hello_fd_finish ( 559s # FDPassing *proxy, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_hello_fd_sync ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GUnixFDList *fd_list, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_finish ( 559s # FDPassing *proxy, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation_nested ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_finish ( 559s # FDPassing *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 559s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 559s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 559s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 559s # 559s # typedef struct _FDPassingProxy FDPassingProxy; 559s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 559s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 559s # 559s # struct _FDPassingProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # FDPassingProxyPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 559s # #endif 559s # 559s # void fdpassing_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 559s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 559s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 559s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 559s # 559s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 559s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 559s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 559s # 559s # struct _FDPassingSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # FDPassingSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 559s # #endif 559s # 559s # FDPassing *fdpassing_skeleton_new (void); 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s # 559s # /tmp/tmplx98y08g/tmpkrkimswn.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmplx98y08g/tmpkrkimswn.xml', '--output', '-', '--header', '--glib-min-required', '2.32'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for FDPassing */ 559s # 559s # #define TYPE_FDPASSING (fdpassing_get_type ()) 559s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 559s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 559s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 559s # 559s # struct _FDPassing; 559s # typedef struct _FDPassing FDPassing; 559s # typedef struct _FDPassingIface FDPassingIface; 559s # 559s # struct _FDPassingIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # gboolean (*handle_hello_fd) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *arg_greeting); 559s # 559s # gboolean (*handle_no_annotation) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale); 559s # 559s # gboolean (*handle_no_annotation_nested) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *arg_files); 559s # 559s # }; 559s # 559s # GType fdpassing_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *fdpassing_interface_info (void); 559s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void fdpassing_complete_hello_fd ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *response); 559s # 559s # void fdpassing_complete_no_annotation ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GVariant *response, 559s # const gchar *response_locale); 559s # 559s # void fdpassing_complete_no_annotation_nested ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void fdpassing_call_hello_fd ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GUnixFDList *fd_list, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_hello_fd_finish ( 559s # FDPassing *proxy, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_hello_fd_sync ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GUnixFDList *fd_list, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_finish ( 559s # FDPassing *proxy, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation_nested ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_finish ( 559s # FDPassing *proxy, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 559s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 559s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 559s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 559s # 559s # typedef struct _FDPassingProxy FDPassingProxy; 559s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 559s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 559s # 559s # struct _FDPassingProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # FDPassingProxyPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 559s # #endif 559s # 559s # void fdpassing_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 559s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 559s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 559s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 559s # 559s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 559s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 559s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 559s # 559s # struct _FDPassingSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # FDPassingSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 559s # #endif 559s # 559s # FDPassing *fdpassing_skeleton_new (void); 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s # 559s # /tmp/tmplx98y08g/tmpntlteg_2.xml: 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # 559s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmplx98y08g/tmpntlteg_2.xml', '--output', '-', '--header', '--glib-min-required', '2.64'] 559s # Return code: 0 559s # Output: 559s # /* 559s # * This file is generated by gdbus-codegen, do not modify it. 559s # * 559s # * The license of this code is the same as for the D-Bus interface description 559s # * it was derived from. Note that it links to GLib, so must comply with the 559s # * LGPL linking clauses. 559s # */ 559s # 559s # #ifndef __STDOUT__ 559s # #define __STDOUT__ 559s # 559s # #include 559s # 559s # G_BEGIN_DECLS 559s # 559s # 559s # /* ------------------------------------------------------------------------ */ 559s # /* Declarations for FDPassing */ 559s # 559s # #define TYPE_FDPASSING (fdpassing_get_type ()) 559s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 559s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 559s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 559s # 559s # struct _FDPassing; 559s # typedef struct _FDPassing FDPassing; 559s # typedef struct _FDPassingIface FDPassingIface; 559s # 559s # struct _FDPassingIface 559s # { 559s # GTypeInterface parent_iface; 559s # 559s # gboolean (*handle_hello_fd) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *arg_greeting); 559s # 559s # gboolean (*handle_no_annotation) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale); 559s # 559s # gboolean (*handle_no_annotation_nested) ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # GVariant *arg_files); 559s # 559s # }; 559s # 559s # GType fdpassing_get_type (void) G_GNUC_CONST; 559s # 559s # GDBusInterfaceInfo *fdpassing_interface_info (void); 559s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 559s # 559s # 559s # /* D-Bus method call completion functions: */ 559s # void fdpassing_complete_hello_fd ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # const gchar *response); 559s # 559s # void fdpassing_complete_no_annotation ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list, 559s # GVariant *response, 559s # const gchar *response_locale); 559s # 559s # void fdpassing_complete_no_annotation_nested ( 559s # FDPassing *object, 559s # GDBusMethodInvocation *invocation, 559s # GUnixFDList *fd_list); 559s # 559s # 559s # 559s # /* D-Bus method calls: */ 559s # void fdpassing_call_hello_fd ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_hello_fd_finish ( 559s # FDPassing *proxy, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_hello_fd_sync ( 559s # FDPassing *proxy, 559s # const gchar *arg_greeting, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # gchar **out_response, 559s # GUnixFDList **out_fd_list, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_finish ( 559s # FDPassing *proxy, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GUnixFDList **out_fd_list, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_greeting, 559s # const gchar *arg_greeting_locale, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # GVariant **out_response, 559s # gchar **out_response_locale, 559s # GUnixFDList **out_fd_list, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_call_no_annotation_nested ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_finish ( 559s # FDPassing *proxy, 559s # GUnixFDList **out_fd_list, 559s # GAsyncResult *res, 559s # GError **error); 559s # 559s # gboolean fdpassing_call_no_annotation_nested_sync ( 559s # FDPassing *proxy, 559s # GVariant *arg_files, 559s # GDBusCallFlags call_flags, 559s # gint timeout_msec, 559s # GUnixFDList *fd_list, 559s # GUnixFDList **out_fd_list, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 559s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 559s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 559s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 559s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 559s # 559s # typedef struct _FDPassingProxy FDPassingProxy; 559s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 559s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 559s # 559s # struct _FDPassingProxy 559s # { 559s # /*< private >*/ 559s # GDBusProxy parent_instance; 559s # FDPassingProxyPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingProxyClass 559s # { 559s # GDBusProxyClass parent_class; 559s # }; 559s # 559s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 559s # #endif 559s # 559s # void fdpassing_proxy_new ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_sync ( 559s # GDBusConnection *connection, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # void fdpassing_proxy_new_for_bus ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GAsyncReadyCallback callback, 559s # gpointer user_data); 559s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 559s # GAsyncResult *res, 559s # GError **error); 559s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 559s # GBusType bus_type, 559s # GDBusProxyFlags flags, 559s # const gchar *name, 559s # const gchar *object_path, 559s # GCancellable *cancellable, 559s # GError **error); 559s # 559s # 559s # /* ---- */ 559s # 559s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 559s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 559s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 559s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 559s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 559s # 559s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 559s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 559s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 559s # 559s # struct _FDPassingSkeleton 559s # { 559s # /*< private >*/ 559s # GDBusInterfaceSkeleton parent_instance; 559s # FDPassingSkeletonPrivate *priv; 559s # }; 559s # 559s # struct _FDPassingSkeletonClass 559s # { 559s # GDBusInterfaceSkeletonClass parent_class; 559s # }; 559s # 559s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 559s # 559s # #if GLIB_CHECK_VERSION(2, 44, 0) 559s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 559s # #endif 559s # 559s # FDPassing *fdpassing_skeleton_new (void); 559s # 559s # 559s # G_END_DECLS 559s # 559s # #endif /* __STDOUT__ */ 559s # Error: 559s 1..39 559s ok - glib/codegen.py.test 559s # Running test: glib/gdbus-subscribe.test 559s TAP version 14 559s # random seed: R02S4fc896711049fb3bdfef13ec711fdeb6 559s 1..24 559s # Start of gdbus tests 559s # Start of subscribe tests 559s # Start of conn tests 559s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/home 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/cache 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/system-config2 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/config 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/system-data2 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/data 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/state 559s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/simple/.dirs/runtime 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/simple summary: A broadcast is only received after subscribing to it 560s # Step 0: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 0 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 1 /gdbus/subscribe/conn/simple 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 560s # Step 0: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: service 2 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: service 2 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 1 560s # Signal received from service 2 :1.2 560s # Signal received from service 2 :1.2 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Signal received from service 2 :1.2 560s # Signal received from service 2 :1.2 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 4 was received 1 times by GDBusConnection, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 2 /gdbus/subscribe/conn/broadcast_from_anyone 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/match_twice/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/match_twice summary: A message matching more than one subscription is received once per subscription 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: (any) 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: (any) 560s # Path: (any) 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 3: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 4: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 4 was received 4 times by GDBusConnection, expected 4 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 3 /gdbus/subscribe/conn/match_twice 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 4 /gdbus/subscribe/conn/limit_by_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 560s # Step 0: adding subscription 560s # Sender: :0.this.had.better.not.exist 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 5 /gdbus/subscribe/conn/nonexistent_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: org.gtk.Test.OwnedLater 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 3: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 5: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 6: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Step 7: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 5 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 3 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 4 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 5 was received 1 times by GDBusConnection, expected 1 560s # NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 7 was received 2 times by GDBusConnection, expected 2 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 6 /gdbus/subscribe/conn/limit_by_well_known_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/limit_to_message_bus/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 560s # Step 0: adding subscription 560s # Sender: org.freedesktop.DBus 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # String argument 0: would I lie to you? 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Waiting for signal to reach message bus 560s # Step 3: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Signal received from message bus org.freedesktop.DBus 560s # Signal received from (unused) org.freedesktop.DBus via connection 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 7 /gdbus/subscribe/conn/limit_to_message_bus 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/conn/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Immediately unsubscribing 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 8 /gdbus/subscribe/conn/unsubscribe_immediately 560s # End of conn tests 560s # Start of proxy tests 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/simple/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/simple summary: A broadcast is only received after subscribing to it 560s # Step 0: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 9 /gdbus/subscribe/proxy/simple 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 560s # Step 0: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: service 2 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: service 2 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 10 /gdbus/subscribe/proxy/broadcast_from_anyone 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/match_twice/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/match_twice summary: A message matching more than one subscription is received once per subscription 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: (any) 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: (any) 560s # Path: (any) 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 3: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 4: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 4 was received 2 times by GDBusProxy, expected 2 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 11 /gdbus/subscribe/proxy/match_twice 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 12 /gdbus/subscribe/proxy/limit_by_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 560s # Step 0: adding subscription 560s # Sender: :0.this.had.better.not.exist 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 13 /gdbus/subscribe/proxy/nonexistent_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: org.gtk.Test.OwnedLater 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 3: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 5: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 6: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Step 7: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 5 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 5 was received 1 times by GDBusProxy, expected 1 560s # NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 7 was received 2 times by GDBusProxy, expected 2 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 14 /gdbus/subscribe/proxy/limit_by_well_known_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 560s # Step 0: adding subscription 560s # Sender: org.freedesktop.DBus 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # String argument 0: would I lie to you? 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Waiting for signal to reach message bus 560s # Step 3: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Signal received from message bus org.freedesktop.DBus 560s # Signal received from (unused) org.freedesktop.DBus via proxy 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 15 /gdbus/subscribe/proxy/limit_to_message_bus 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/proxy/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 16 /gdbus/subscribe/proxy/unsubscribe_immediately 560s # End of proxy tests 560s # Start of parallel tests 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/simple/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/simple summary: A broadcast is only received after subscribing to it 560s # Step 0: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 0 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 17 /gdbus/subscribe/parallel/simple 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 560s # Step 0: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: service 2 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: service 2 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 1 560s # Signal received from service 2 :1.2 560s # Signal received from service 2 :1.2 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Signal received from service 2 :1.2 560s # Signal received from service 2 :1.2 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 4 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 18 /gdbus/subscribe/parallel/broadcast_from_anyone 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/match_twice/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/match_twice summary: A message matching more than one subscription is received once per subscription 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: adding subscription 560s # Sender: (any) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: (any) 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: (any) 560s # Path: (any) 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Cannot subscribe via proxy: no bus name 560s # Waiting for AddMatch to be processed 560s # Step 3: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 4: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 4 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 4 was received 4 times by GDBusConnection, expected 4 560s # Signal from step 4 was received 2 times by GDBusProxy, expected 2 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 19 /gdbus/subscribe/parallel/match_twice 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 560s # Step 0: adding subscription 560s # Sender: service :1.1 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 3: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 3 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 3 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 20 /gdbus/subscribe/parallel/limit_by_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 560s # Step 0: adding subscription 560s # Sender: :0.this.had.better.not.exist 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 21 /gdbus/subscribe/parallel/nonexistent_unique_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 2: adding subscription 560s # Sender: org.gtk.Test.OwnedLater 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 3: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 4: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 5: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Step 6: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Step 7: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 5 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 5 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via connection 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 7 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 560s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 3 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 4 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 5 was received 1 times by GDBusConnection, expected 1 560s # Signal from step 5 was received 1 times by GDBusProxy, expected 1 560s # NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0 560s # NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 7 was received 2 times by GDBusConnection, expected 2 560s # Signal from step 7 was received 2 times by GDBusProxy, expected 2 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 22 /gdbus/subscribe/parallel/limit_by_well_known_name 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 560s # Step 0: adding subscription 560s # Sender: org.freedesktop.DBus 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 1: emitting signal 560s # Sender: attacker 560s # Destination: (broadcast) 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # String argument 0: would I lie to you? 560s # Waiting for signal to reach message bus 560s # Step 2: emitting signal 560s # Sender: attacker 560s # Destination: subscriber :1.0 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Waiting for signal to reach message bus 560s # Step 3: claiming bus name 560s # Name: org.gtk.Test.OwnedLater 560s # Owner: service 560s # Signal received from message bus org.freedesktop.DBus 560s # Signal received from (unused) org.freedesktop.DBus via connection 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Signal received from message bus org.freedesktop.DBus 560s # Signal received from (unused) org.freedesktop.DBus via proxy 560s # Path: /org/freedesktop/DBus 560s # Interface: org.freedesktop.DBus 560s # Member: NameOwnerChanged 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 560s # NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1 560s # NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 23 /gdbus/subscribe/parallel/limit_to_message_bus 560s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/home 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/cache 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/config 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data2 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/data 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/state 560s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_ZIVCK3/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/runtime 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 560s # subscriber is :1.0 560s # service is :1.1 560s # service 2 is :1.2 560s # attacker is :1.3 560s # Waiting for AddMatch to be processed 560s # /gdbus/subscribe/parallel/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 560s # Step 0: claiming bus name 560s # Name: org.gtk.Test.AlreadyOwned 560s # Owner: service 560s # Step 1: adding subscription 560s # Sender: org.gtk.Test.AlreadyOwned 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: (any) 560s # String argument 0: (any) 560s # Flags: 0 560s # Subscribing via connection 560s # Immediately unsubscribing 560s # Subscribing via proxy 560s # Waiting for AddMatch to be processed 560s # Step 2: emitting signal 560s # Sender: service 560s # Destination: (broadcast) 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Waiting for signal to reach message bus 560s # Signal received from service :1.1 560s # Signal received from service :1.1 via proxy 560s # Path: /org/gtk/GDBus/ExampleInterface 560s # Interface: org.gtk.GDBus.ExampleInterface 560s # Member: Foo 560s # Argument 0: (not a string) 560s # Sent in step: 2 560s # Received Finished signal from subscriber :1.0 560s # Received Finished signal from service :1.1 560s # Received Finished signal from service 2 :1.2 560s # Received Finished signal from attacker :1.3 560s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 560s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 560s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 560s # Signal from step 2 was received 1 times by GDBusProxy, expected 1 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 560s ok 24 /gdbus/subscribe/parallel/unsubscribe_immediately 560s # End of parallel tests 560s # End of subscribe tests 560s # End of gdbus tests 560s ok - glib/gdbus-subscribe.test 560s # Running test: glib/srvtarget.test 560s TAP version 14 560s # random seed: R02S047d722f2657d09e5107156206b7c129 560s 1..1 560s # Start of srvtarget tests 561s ok - glib/srvtarget.test 561s ok 1 /srvtarget/srv-target-ordering 561s # slow test /srvtarget/srv-target-ordering executed in 0.80 secs 561s # End of srvtarget tests 561s # Running test: glib/hook.test 561s TAP version 14 561s # random seed: R02S9b103f8384aefad12a5454f9625157a3 561s 1..2 561s # Start of hook tests 561s ok 1 /hook/basics 561s ok 2 /hook/corner-cases 561s # End of hook tests 561s ok - glib/hook.test 561s # Running test: glib/volumemonitor.test 561s TAP version 14 561s ok - glib/volumemonitor.test 561s # Running test: glib/buffered-input-stream.test 561s # random seed: R02S5682bd0270975b4e334074294fbe4184 561s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 561s 1..3 561s # Start of volumemonitor tests 561s ok 1 /volumemonitor/connected_drives 561s ok 2 /volumemonitor/volumes 561s ok 3 /volumemonitor/mounts 561s # End of volumemonitor tests 561s TAP version 14 561s # random seed: R02S4cdf793698001f8f09de2c804b8d0e14 561s 1..10 561s # Start of buffered-input-stream tests 561s ok 1 /buffered-input-stream/peek 561s ok 2 /buffered-input-stream/peek-buffer 561s ok 3 /buffered-input-stream/set-buffer-size 561s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=562393 561s ok 4 /buffered-input-stream/read-byte 561s ok 5 /buffered-input-stream/read 561s ok 6 /buffered-input-stream/read-async 561s ok 7 /buffered-input-stream/skip 561s ok 8 /buffered-input-stream/skip-async 561s ok 9 /buffered-input-stream/seek 561s # End of buffered-input-stream tests 561s # Start of filter-input-stream tests 561s ok 10 /filter-input-stream/close 561s # End of filter-input-stream tests 561s TAP version 14 561s # random seed: R02S5c689ce7f81cceb025c7e9b2bf8f7b98 561s 1..3 561s # Start of trash tests 561s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/251 561s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 561s # File: /tmp/test-trash0NP9J3 (parent st_dev: 64769) 561s # Home: /home/ubuntu (st_dev: 64769) 561s ok 1 /trash/not-supported # SKIP The file has to be on another filesystem than the home trash to run this test 561s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1522 561s ok 2 /trash/symlinks # SKIP Directory '/home/ubuntu/.local' does not exist 561s ok 3 /trash/long-filename 561s # End of trash tests 561s TAP version 14 561s # random seed: R02S7dc7cbfd3fabba442e96b04d091ae317 561s ok - glib/buffered-input-stream.test 561s # Running test: glib/trash.test 561s ok - glib/trash.test 561s # Running test: glib/gdbus-test-codegen-old.test 561s 1..8 561s # Start of gdbus tests 561s # Start of codegen tests 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/annotations/.dirs/runtime 561s ok 1 /gdbus/codegen/annotations 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/interface_stability/.dirs/runtime 561s ok 2 /gdbus/codegen/interface_stability 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/object-manager/.dirs/runtime 561s ok 3 /gdbus/codegen/object-manager 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/property-naming/.dirs/runtime 561s ok 4 /gdbus/codegen/property-naming 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/autocleanups/.dirs/runtime 561s ok 5 /gdbus/codegen/autocleanups 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/deprecations/.dirs/runtime 561s ok 6 /gdbus/codegen/deprecations 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/standalone-interface-info/.dirs/runtime 561s ok 7 /gdbus/codegen/standalone-interface-info 561s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/home 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/cache 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/system-config2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/config 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/system-data2 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/data 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/state 561s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_O7F9J3/gdbus/codegen/unix-fd-list/.dirs/runtime 561s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726 561s ok 8 /gdbus/codegen/unix-fd-list 561s # End of codegen tests 561s # End of gdbus tests 561s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 561s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 561s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 561s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 561s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 561s ok - glib/gdbus-test-codegen-old.test 561s # Running test: glib/642026.test 561s TAP version 14 561s # random seed: R02S011de67258e58872fe79ac4dcea804d6 561s 1..1 561s # Start of glib tests 561s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026 561s ok 1 /glib/642026 561s # End of glib tests 561s ok - glib/642026.test 561s TAP version 14 561s # random seed: R02S4fb7fb4c5399a459ef1870a8ddde8df4 561s 1..69 561s # Start of gvariant tests 561s # Running test: glib/gvariant.test 561s ok 1 /gvariant/type 561s ok 2 /gvariant/typeinfo 561s ok 3 /gvariant/string 561s ok 4 /gvariant/utf8 561s ok 5 /gvariant/utf8-new-strings 562s ok 6 /gvariant/containers 562s # slow test /gvariant/containers executed in 0.80 secs 562s ok 7 /gvariant/format-strings 562s ok 8 /gvariant/invalid-varargs 562s ok 9 /gvariant/varargs 562s ok 10 /gvariant/valist 562s ok 11 /gvariant/builder-memory 562s ok 12 /gvariant/hashing 562s ok 13 /gvariant/byteswap 562s ok 14 /gvariant/parser 562s ok 15 /gvariant/parse-failures 562s ok 16 /gvariant/parse-positional 562s ok 17 /gvariant/floating 562s ok 18 /gvariant/bytestring 562s ok 19 /gvariant/lookup-value 562s ok 20 /gvariant/lookup 562s ok 21 /gvariant/compare 562s ok 22 /gvariant/equal 562s ok 23 /gvariant/fixed-array 562s ok 24 /gvariant/check-format-string 562s ok 25 /gvariant/checksum-basic 562s ok 26 /gvariant/checksum-nested 562s ok 27 /gvariant/gbytes 562s ok 28 /gvariant/print-context 562s ok 29 /gvariant/error-quark 562s ok 30 /gvariant/stack-builder-init 562s ok 31 /gvariant/stack-builder-init-static 562s ok 32 /gvariant/stack-builder-init-unset 562s ok 33 /gvariant/stack-dict-init 562s ok 34 /gvariant/unaligned-construction 562s # Start of type tests 562s # Start of string-scan tests 562s # Start of recursion tests 562s ok 35 /gvariant/type/string-scan/recursion/tuple 562s ok 36 /gvariant/type/string-scan/recursion/array 562s # End of recursion tests 562s # End of string-scan tests 562s # End of type tests 562s # Start of serialiser tests 562s ok 37 /gvariant/serialiser/maybe 563s ok 38 /gvariant/serialiser/array 563s ok 39 /gvariant/serialiser/tuple 563s ok 40 /gvariant/serialiser/variant 563s ok 41 /gvariant/serialiser/strings 564s # Executing: glib/gvariant.test 566s ok 42 /gvariant/serialiser/byteswap 566s # slow test /gvariant/serialiser/byteswap executed in 2.99 secs 566s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1865 566s # /gvariant/serialiser/children summary: Test that getting a child variant before and after serialisation of the parent works 566s ok 43 /gvariant/serialiser/children 566s # Start of byteswap tests 566s ok 44 /gvariant/serialiser/byteswap/zero-sized 566s # End of byteswap tests 566s # Start of fuzz tests 566s ok 45 /gvariant/serialiser/fuzz/1% 566s # slow test /gvariant/serialiser/fuzz/1% executed in 0.66 secs 567s ok 46 /gvariant/serialiser/fuzz/5% 567s ok 47 /gvariant/serialiser/fuzz/9% 568s ok 48 /gvariant/serialiser/fuzz/13% 568s # slow test /gvariant/serialiser/fuzz/13% executed in 0.60 secs 569s # Executing: glib/gvariant.test 574s # Executing: glib/gvariant.test 577s ok 49 /gvariant/serialiser/fuzz/17% 577s # slow test /gvariant/serialiser/fuzz/17% executed in 9.08 secs 577s # End of fuzz tests 577s # End of serialiser tests 577s # Start of utf8 tests 577s # Start of subprocess tests 577s # End of subprocess tests 577s # End of utf8 tests 577s # Start of varargs tests 577s # Start of subprocess tests 577s # End of subprocess tests 577s # End of varargs tests 577s # Start of byteswap tests 577s # /gvariant/byteswap/non-normal-non-aligned summary: Test that calling g_variant_byteswap() on a variant which is in non-normal form and doesn’t need byteswapping returns the same variant in normal form. 577s ok 50 /gvariant/byteswap/non-normal-non-aligned 577s # End of byteswap tests 577s # Start of parser tests 577s ok 51 /gvariant/parser/integer-bounds 577s ok 52 /gvariant/parser/recursion 577s # Start of recursion tests 577s ok 53 /gvariant/parser/recursion/typedecls 577s # /gvariant/parser/recursion/maybes summary: Test that nested maybes are handled correctly when parsing text-form variants 577s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2782 577s # Text form 0: @mmmu 5 577s # Text form 1: @mmmas ['hello'] 577s # Text form 2: @mmmu just just nothing 577s # Text form 3: @mmmas just just nothing 577s # Text form 4: @mmmu just nothing 577s # Text form 5: @mmmas just nothing 577s # Text form 6: @mmmu nothing 577s # Text form 7: @mmmas nothing 577s ok 54 /gvariant/parser/recursion/maybes 577s # End of recursion tests 577s # End of parser tests 577s # Start of parse tests 577s # Start of subprocess tests 577s # End of subprocess tests 577s # End of parse tests 577s # Start of normal-checking tests 577s ok 55 /gvariant/normal-checking/tuples 577s ok 56 /gvariant/normal-checking/array-offsets 577s ok 57 /gvariant/normal-checking/array-offsets2 577s ok 58 /gvariant/normal-checking/tuple-offsets 577s ok 59 /gvariant/normal-checking/tuple-offsets2 577s ok 60 /gvariant/normal-checking/tuple-offsets3 577s ok 61 /gvariant/normal-checking/tuple-offsets4 577s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2840 577s ok 62 /gvariant/normal-checking/tuple-offsets5 577s ok 63 /gvariant/normal-checking/empty-object-path 577s # Start of array-offsets tests 577s ok 64 /gvariant/normal-checking/array-offsets/overlapped 577s ok 65 /gvariant/normal-checking/array-offsets/minimal-sized 577s # End of array-offsets tests 577s # Start of tuple-offsets tests 577s ok 66 /gvariant/normal-checking/tuple-offsets/minimal-sized 577s # End of tuple-offsets tests 577s # End of normal-checking tests 577s # Start of recursion-limits tests 577s ok - glib/gvariant.test 577s # Running test: glib/dynamictests.test 577s ok 67 /gvariant/recursion-limits/variant-in-variant 577s ok 68 /gvariant/recursion-limits/array-in-variant 577s # End of recursion-limits tests 577s # End of gvariant tests 577s # Start of gvarianttype tests 577s ok 69 /gvarianttype/hash 577s # End of gvarianttype tests 577s TAP version 14 577s # random seed: R02Sced811620570eb7c190a3b4ec2307dfe 577s 1..2 577s # Start of GObject tests 577s ok 1 /GObject/threaded-dynamic-ref-unref-init 577s ok 2 /GObject/dynamic-interface-properties 577s # End of GObject tests 577s ok - glib/dynamictests.test 577s # Running test: glib/param.test 577s TAP version 14 577s # random seed: R02S9307c92fd45b544dd8ecc253f32084eb 577s 1..32 577s # Start of param tests 577s ok 1 /param/value 577s ok 2 /param/strings 577s ok 3 /param/qdata 577s ok 4 /param/validate 577s ok 5 /param/convert 577s ok 6 /param/implement # SKIP Skipping slow /param/implement test 577s ok 7 /param/default 577s ok 8 /param/is-valid-name 577s # Start of invalid-name tests 577s # /param/invalid-name/colon summary: Test that properties cannot be created with invalid names 577s ok 9 /param/invalid-name/colon 577s # /param/invalid-name/first-char summary: Test that properties cannot be created with invalid names 577s ok 10 /param/invalid-name/first-char 577s # /param/invalid-name/empty summary: Test that properties cannot be created with invalid names 577s ok 11 /param/invalid-name/empty 577s # End of invalid-name tests 577s # Start of implement tests 577s # Start of subprocess tests 577s # End of subprocess tests 577s # End of implement tests 577s # End of param tests 577s # Start of value tests 577s ok 12 /value/transform 577s # End of value tests 577s # Start of paramspec tests 577s ok 13 /paramspec/char 577s ok 14 /paramspec/uchar 577s ok 15 /paramspec/int 577s ok 16 /paramspec/uint 577s ok 17 /paramspec/long 577s ok 18 /paramspec/ulong 577s ok 19 /paramspec/int64 577s ok 20 /paramspec/uint64 577s ok 21 /paramspec/float 577s ok 22 /paramspec/double 577s ok 23 /paramspec/unichar 577s ok 24 /paramspec/param 577s ok 25 /paramspec/null-param 577s ok 26 /paramspec/string 577s ok 27 /paramspec/override 577s ok 28 /paramspec/gtype 577s ok 29 /paramspec/variant 577s ok 30 /paramspec/custom 577s ok - glib/param.test 577s ok 31 /paramspec/pool 577s # Start of variant tests 577s ok 32 /paramspec/variant/cmp 577s # End of variant tests 577s # End of paramspec tests 577s # Running test: glib/gio-tool.py.test 577s TAP version 13 577s ok 1 __main__.TestGioLaunchExpandsDesktopEntry.test_absolute_from_folder 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmpdp200ezi 577s # Running: ['/usr/bin/gio', 'launch', '/tmp/tmpdp200ezi/folder/desktop.entry'] 577s # Working Directory: /tmp/tmpdp200ezi/folder 577s # Return code: 0 577s # Output: 577s # /tmp/tmpdp200ezi/folder/desktop.entry 577s # Error: 577s ok 2 __main__.TestGioLaunchExpandsDesktopEntry.test_absolute_from_parent 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmp7fetn_rv 577s # Running: ['/usr/bin/gio', 'launch', '/tmp/tmp7fetn_rv/folder/desktop.entry'] 577s # Working Directory: /tmp/tmp7fetn_rv 577s # Return code: 0 577s # Output: 577s # /tmp/tmp7fetn_rv/folder/desktop.entry 577s # Error: 577s ok 3 __main__.TestGioLaunchExpandsDesktopEntry.test_absolute_from_sibling 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmp5ivzf51f 577s # Running: ['/usr/bin/gio', 'launch', '/tmp/tmp5ivzf51f/folder/desktop.entry'] 577s # Working Directory: /tmp/tmp5ivzf51f/sibling 577s # Return code: 0 577s # Output: 577s # /tmp/tmp5ivzf51f/folder/desktop.entry 577s # Error: 577s ok 4 __main__.TestGioLaunchExpandsDesktopEntry.test_relative_from_folder 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmpm0zkd_r4 577s # Running: ['/usr/bin/gio', 'launch', 'desktop.entry'] 577s # Working Directory: /tmp/tmpm0zkd_r4/folder 577s # Return code: 0 577s # Output: 577s # /tmp/tmpm0zkd_r4/folder/desktop.entry 577s # Error: 577s ok 5 __main__.TestGioLaunchExpandsDesktopEntry.test_relative_from_parent 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmph1b9y8ws 577s # Running: ['/usr/bin/gio', 'launch', 'folder/desktop.entry'] 577s # Working Directory: /tmp/tmph1b9y8ws 577s # Return code: 0 577s # Output: 577s # /tmp/tmph1b9y8ws/folder/desktop.entry 577s # Error: 577s ok 6 __main__.TestGioLaunchExpandsDesktopEntry.test_relative_from_sibling 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmpxg9vmeib 577s # Running: ['/usr/bin/gio', 'launch', '../folder/desktop.entry'] 577s # Working Directory: /tmp/tmpxg9vmeib/sibling 577s # Return code: 0 577s # Output: 577s # /tmp/tmpxg9vmeib/folder/desktop.entry 577s # Error: 577s ok 7 __main__.TestGioTool.test_help 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmph1e9sniq 577s # Running: ['/usr/bin/gio', '--help'] 577s # Return code: 0 577s # Output: 577s # Usage: 577s # gio COMMAND [ARGS…] 577s # 577s # Commands: 577s # help Print help 577s # version Print version 577s # cat Concatenate files to standard output 577s # copy Copy one or more files 577s # info Show information about locations 577s # launch Launch an application from a desktop file 577s # list List the contents of locations 577s # mime Get or set the handler for a mimetype 577s # mkdir Create directories 577s # monitor Monitor files and directories for changes 577s # mount Mount or unmount the locations 577s # move Move one or more files 577s # open Open files with the default application 577s # rename Rename a file 577s # remove Delete one or more files 577s # save Read from standard input and save 577s # set Set a file attribute 577s # trash Move files or directories to the trash 577s # tree Lists the contents of locations in a tree 577s # 577s # Use “gio help COMMAND” to get detailed help. 577s # Error: 577s # 577s # Running: ['/usr/bin/gio', 'help'] 577s # Return code: 0 577s # Output: 577s # Usage: 577s # gio COMMAND [ARGS…] 577s # 577s # Commands: 577s # help Print help 577s # version Print version 577s # cat Concatenate files to standard output 577s # copy Copy one or more files 577s # info Show information about locations 577s # launch Launch an application from a desktop file 577s # list List the contents of locations 577s # mime Get or set the handler for a mimetype 577s # mkdir Create directories 577s # monitor Monitor files and directories for changes 577s # mount Mount or unmount the locations 577s # move Move one or more files 577s # open Open files with the default application 577s # rename Rename a file 577s # remove Delete one or more files 577s # save Read from standard input and save 577s # set Set a file attribute 577s # trash Move files or directories to the trash 577s # tree Lists the contents of locations in a tree 577s # 577s # Use “gio help COMMAND” to get detailed help. 577s # Error: 577s ok 8 __main__.TestGioTool.test_info_non_default_attributes 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmpnvty39t8 577s # Running: ['/usr/bin/gio', 'info', '--attributes=standard::content-type', '/tmp/tmpnvty39t8/tmpfamz3xxl'] 577s # Return code: 0 577s # Output: 577s # uri: file:///tmp/tmpnvty39t8/tmpfamz3xxl 577s # local path: /tmp/tmpnvty39t8/tmpfamz3xxl 577s # unix mount: /dev/vda1 / ext4 rw,relatime,discard,errors=remount-ro,commit=30 577s # attributes: 577s # standard::content-type: application/x-zerosize 577s # Error: 577s ok 9 __main__.TestGioTool.test_no_args 577s # gio: /usr/bin/gio 577s # tmpdir: /tmp/tmpt8uncg67 577s # Running: ['/usr/bin/gio'] 577s # Return code: 1 577s # Output: 577s # 577s # Error: 577s # Usage: 577s # gio COMMAND [ARGS…] 577s # 577s # Commands: 577s # help Print help 577s # version Print version 577s # cat Concatenate files to standard output 577s # copy Copy one or more files 577s # info Show information about locations 577s # launch Launch an application from a desktop file 577s # list List the contents of locations 577s # mime Get or set the handler for a mimetype 577s # mkdir Create directories 577s # monitor Monitor files and directories for changes 577s # mount Mount or unmount the locations 577s # move Move one or more files 577s # open Open files with the default application 577s # rename Rename a file 577s # remove Delete one or more files 577s # save Read from standard input and save 577s # set Set a file attribute 577s # trash Move files or directories to the trash 577s # tree Lists the contents of locations in a tree 577s # 577s # Use “gio help COMMAND” to get detailed help. 577s 1..9 577s ok - glib/gio-tool.py.test 577s # Running test: glib/gdbus-proxy-unique-name.test 577s TAP version 14 577s # random seed: R02S61cd7720207771ae8d64832bd7a01f28 577s 1..1 577s # Start of gdbus tests 577s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/home 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/cache 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/system-config1:/tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/system-config2 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/config 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/system-data1:/tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/system-data2 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/data 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/state 577s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-unique-name_3R9CK3/gdbus/proxy-unique-name/.dirs/runtime 577s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 577s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 577s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 577s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 577s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 577s ok - glib/gdbus-proxy-unique-name.test 577s ok 1 /gdbus/proxy-unique-name 577s # End of gdbus tests 577s # Running test: glib/pollable.test 577s TAP version 14 577s # random seed: R02S2efeaac66b4675170c94d505ed70e5ff 577s 1..6 577s # Start of pollable tests 577s ok 1 /pollable/converter 577s ok - glib/pollable.test 577s # Running test: glib/genmarshal.py.test 577s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 577s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x89f4745b900 and GSocketClientAsyncConnectData 0x89f4745d7a0 577s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 577s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 577s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x89f47453e00 for GSocketClientAsyncConnectData 0x89f4745d7a0 577s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 577s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 577s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 577s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 577s ok 2 /pollable/socket 577s # Start of unix tests 577s # /pollable/unix/pipe summary: Test that pipes are considered pollable, just like sockets 577s ok 3 /pollable/unix/pipe 577s # /pollable/unix/pty summary: Test that PTYs are considered pollable 577s ok 4 /pollable/unix/pty 577s # /pollable/unix/file summary: Test that regular files are not considered pollable 577s ok 5 /pollable/unix/file 577s # /pollable/unix/nulldev summary: Test that /dev/null is not considered pollable, but only if on a system where we are able to tell it apart from devices that actually implement poll 577s ok 6 /pollable/unix/nulldev 577s # End of unix tests 577s # End of pollable tests 578s TAP version 13 578s ok 1 __main__.TestGenmarshal.test_empty_list 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpd5l6d5w0 578s # /tmp/tmpd5l6d5w0/tmpr3as_2p4.list: 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpd5l6d5w0/tmpr3as_2p4.list', '--header', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # #include 578s # 578s # G_BEGIN_DECLS 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpd5l6d5w0/tmpr3as_2p4.list', '--body', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #include 578s # 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # Error: 578s ok 2 __main__.TestGenmarshal.test_help 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmp5v93yd5b 578s # Running: ['/usr/bin/glib-genmarshal', '--help'] 578s # Return code: 0 578s # Output: 578s # usage: glib-genmarshal [-h] [--prefix STRING] [--output FILE] [--skip-source] 578s # [--internal] [--valist-marshallers] [-v] 578s # [--g-fatal-warnings] [--include-header [HEADER]] 578s # [--pragma-once] [-D CPP_DEFINES] [-U CPP_UNDEFINES] 578s # [--prototypes] [--header] [--body] [--stdinc | 578s # --nostdinc] [--quiet | --verbose] 578s # [FILE ...] 578s # 578s # Generate signal marshallers for GObject 578s # 578s # positional arguments: 578s # FILE Files with lists of marshallers to generate, or "-" 578s # for standard input 578s # 578s # options: 578s # -h, --help show this help message and exit 578s # --prefix STRING Specify marshaller prefix 578s # --output FILE Write output into the specified file 578s # --skip-source Skip source location comments 578s # --internal Mark generated functions as internal 578s # --valist-marshallers Generate va_list marshallers 578s # -v, --version Print version information, and exit 578s # --g-fatal-warnings Make warnings fatal 578s # --include-header [HEADER] 578s # Include the specified header in the body 578s # --pragma-once Use "pragma once" as the inclusion guard 578s # -D CPP_DEFINES Pre-processor define 578s # -U CPP_UNDEFINES Pre-processor undefine 578s # --prototypes Generate the marshallers prototype in the C code 578s # --header Generate C headers 578s # --body Generate C code 578s # --stdinc Include standard marshallers 578s # --nostdinc Use standard marshallers 578s # --quiet Only print warnings and errors 578s # --verbose Be verbose, and include debugging information 578s # Error: 578s ok 3 __main__.TestGenmarshal.test_no_args 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpovpxmwpq 578s # Running: ['/usr/bin/glib-genmarshal'] 578s # Return code: 0 578s # Output: 578s # 578s # Error: 578s ok 4 __main__.TestGenmarshal.test_void_boolean 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpatxa_u1q 578s # /tmp/tmpatxa_u1q/tmplkz5sq6a.list: VOID:BOOLEAN 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpatxa_u1q/tmplkz5sq6a.list', '--header', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # #include 578s # 578s # G_BEGIN_DECLS 578s # 578s # /* VOID:BOOLEAN (/tmp/tmpatxa_u1q/tmplkz5sq6a.list:1) */ 578s # #define g_cclosure_user_marshal_VOID__BOOLEAN g_cclosure_marshal_VOID__BOOLEAN 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpatxa_u1q/tmplkz5sq6a.list', '--body', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #include 578s # 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # Error: 578s ok 5 __main__.TestGenmarshal.test_void_boolean_int64 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpuiijngt4 578s # /tmp/tmpuiijngt4/tmpyx_fyr5p.list: VOID:BOOLEAN,INT64 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpuiijngt4/tmpyx_fyr5p.list', '--header', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # #include 578s # 578s # G_BEGIN_DECLS 578s # 578s # /* VOID:BOOLEAN,INT64 (/tmp/tmpuiijngt4/tmpyx_fyr5p.list:1) */ 578s # extern 578s # void g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure *closure, 578s # GValue *return_value, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint, 578s # gpointer marshal_data); 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpuiijngt4/tmpyx_fyr5p.list', '--body', '--quiet'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #include 578s # 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # 578s # /* VOID:BOOLEAN,INT64 (/tmp/tmpuiijngt4/tmpyx_fyr5p.list:1) */ 578s # void 578s # g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint G_GNUC_UNUSED, 578s # gpointer marshal_data) 578s # { 578s # typedef void (*GMarshalFunc_VOID__BOOLEAN_INT64) (gpointer data1, 578s # gboolean arg1, 578s # gint64 arg2, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__BOOLEAN_INT64 callback; 578s # 578s # g_return_if_fail (n_param_values == 3); 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = g_value_peek_pointer (param_values + 0); 578s # } 578s # else 578s # { 578s # data1 = g_value_peek_pointer (param_values + 0); 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__BOOLEAN_INT64) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # g_marshal_value_peek_boolean (param_values + 1), 578s # g_marshal_value_peek_int64 (param_values + 2), 578s # data2); 578s # } 578s # Error: 578s ok 6 __main__.TestGenmarshal.test_void_param_nostdinc 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpg8goi721 578s # /tmp/tmpg8goi721/tmpjfi3cosb.list: VOID:PARAM 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpg8goi721/tmpjfi3cosb.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # G_BEGIN_DECLS 578s # 578s # /* VOID:PARAM (/tmp/tmpg8goi721/tmpjfi3cosb.list:1) */ 578s # extern 578s # void g_cclosure_user_marshal_VOID__PARAM (GClosure *closure, 578s # GValue *return_value, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint, 578s # gpointer marshal_data); 578s # extern 578s # void g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure, 578s # GValue *return_value, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types); 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpg8goi721/tmpjfi3cosb.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # 578s # /* VOID:PARAM (/tmp/tmpg8goi721/tmpjfi3cosb.list:1) */ 578s # void 578s # g_cclosure_user_marshal_VOID__PARAM (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint G_GNUC_UNUSED, 578s # gpointer marshal_data) 578s # { 578s # typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__PARAM callback; 578s # 578s # g_return_if_fail (n_param_values == 2); 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = g_value_peek_pointer (param_values + 0); 578s # } 578s # else 578s # { 578s # data1 = g_value_peek_pointer (param_values + 0); 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # g_marshal_value_peek_param (param_values + 1), 578s # data2); 578s # } 578s # 578s # void 578s # g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types) 578s # { 578s # typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__PARAM callback; 578s # gpointer arg0; 578s # va_list args_copy; 578s # 578s # va_copy (args_copy, args); 578s # arg0 = (gpointer) va_arg (args_copy, gpointer); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # arg0 = g_param_spec_ref (arg0); 578s # va_end (args_copy); 578s # 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = instance; 578s # } 578s # else 578s # { 578s # data1 = instance; 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # arg0, 578s # data2); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # g_param_spec_unref (arg0); 578s # } 578s # Error: 578s ok 7 __main__.TestGenmarshal.test_void_string_nostdinc 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpnjutjro2 578s # /tmp/tmpnjutjro2/tmpdpcluasa.list: VOID:STRING 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpnjutjro2/tmpdpcluasa.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # G_BEGIN_DECLS 578s # 578s # /* VOID:STRING (/tmp/tmpnjutjro2/tmpdpcluasa.list:1) */ 578s # extern 578s # void g_cclosure_user_marshal_VOID__STRING (GClosure *closure, 578s # GValue *return_value, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint, 578s # gpointer marshal_data); 578s # extern 578s # void g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure, 578s # GValue *return_value, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types); 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpnjutjro2/tmpdpcluasa.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # 578s # /* VOID:STRING (/tmp/tmpnjutjro2/tmpdpcluasa.list:1) */ 578s # void 578s # g_cclosure_user_marshal_VOID__STRING (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint G_GNUC_UNUSED, 578s # gpointer marshal_data) 578s # { 578s # typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__STRING callback; 578s # 578s # g_return_if_fail (n_param_values == 2); 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = g_value_peek_pointer (param_values + 0); 578s # } 578s # else 578s # { 578s # data1 = g_value_peek_pointer (param_values + 0); 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # g_marshal_value_peek_string (param_values + 1), 578s # data2); 578s # } 578s # 578s # void 578s # g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types) 578s # { 578s # typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__STRING callback; 578s # gpointer arg0; 578s # va_list args_copy; 578s # 578s # va_copy (args_copy, args); 578s # arg0 = (gpointer) va_arg (args_copy, gpointer); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # arg0 = g_strdup (arg0); 578s # va_end (args_copy); 578s # 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = instance; 578s # } 578s # else 578s # { 578s # data1 = instance; 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # arg0, 578s # data2); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # g_free (arg0); 578s # } 578s # Error: 578s ok 8 __main__.TestGenmarshal.test_void_variant_nostdinc_valist_marshaller 578s # glib-genmarshal: /usr/bin/glib-genmarshal 578s # tmpdir: /tmp/tmpknq1qx_c 578s # /tmp/tmpknq1qx_c/tmp67z2pzr3.list: VOID:VARIANT 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpknq1qx_c/tmp67z2pzr3.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 578s # 578s # G_BEGIN_DECLS 578s # 578s # /* VOID:VARIANT (/tmp/tmpknq1qx_c/tmp67z2pzr3.list:1) */ 578s # extern 578s # void g_cclosure_user_marshal_VOID__VARIANT (GClosure *closure, 578s # GValue *return_value, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint, 578s # gpointer marshal_data); 578s # extern 578s # void g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure, 578s # GValue *return_value, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types); 578s # 578s # 578s # G_END_DECLS 578s # 578s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 578s # Error: 578s # 578s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpknq1qx_c/tmp67z2pzr3.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 578s # Return code: 0 578s # Output: 578s # /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 578s # #ifdef G_ENABLE_DEBUG 578s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 578s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 578s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 578s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 578s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 578s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 578s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 578s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 578s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 578s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 578s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 578s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 578s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 578s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 578s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 578s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 578s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 578s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 578s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 578s # #else /* !G_ENABLE_DEBUG */ 578s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 578s # * Do not access GValues directly in your code. Instead, use the 578s # * g_value_get_*() functions 578s # */ 578s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 578s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 578s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 578s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 578s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 578s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 578s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 578s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 578s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 578s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 578s # #endif /* !G_ENABLE_DEBUG */ 578s # 578s # /* VOID:VARIANT (/tmp/tmpknq1qx_c/tmp67z2pzr3.list:1) */ 578s # void 578s # g_cclosure_user_marshal_VOID__VARIANT (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # guint n_param_values, 578s # const GValue *param_values, 578s # gpointer invocation_hint G_GNUC_UNUSED, 578s # gpointer marshal_data) 578s # { 578s # typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__VARIANT callback; 578s # 578s # g_return_if_fail (n_param_values == 2); 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = g_value_peek_pointer (param_values + 0); 578s # } 578s # else 578s # { 578s # data1 = g_value_peek_pointer (param_values + 0); 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # g_marshal_value_peek_variant (param_values + 1), 578s # data2); 578s # } 578s # 578s # void 578s # g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure, 578s # GValue *return_value G_GNUC_UNUSED, 578s # gpointer instance, 578s # va_list args, 578s # gpointer marshal_data, 578s # int n_params, 578s # GType *param_types) 578s # { 578s # typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1, 578s # gpointer arg1, 578s # gpointer data2); 578s # GCClosure *cc = (GCClosure *) closure; 578s # gpointer data1, data2; 578s # GMarshalFunc_VOID__VARIANT callback; 578s # gpointer arg0; 578s # va_list args_copy; 578s # 578s # va_copy (args_copy, args); 578s # arg0 = (gpointer) va_arg (args_copy, gpointer); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # arg0 = g_variant_ref_sink (arg0); 578s # va_end (args_copy); 578s # 578s # 578s # if (G_CCLOSURE_SWAP_DATA (closure)) 578s # { 578s # data1 = closure->data; 578s # data2 = instance; 578s # } 578s # else 578s # { 578s # data1 = instance; 578s # data2 = closure->data; 578s # } 578s # callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback); 578s # 578s # callback (data1, 578s # arg0, 578s # data2); 578s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 578s # g_variant_unref (arg0); 578s # } 578s # Error: 578s 1..8 578s ok - glib/genmarshal.py.test 578s # Running test: glib/struct-info.test 578s TAP version 14 578s # random seed: R02Sb371695ec9eb9af628a7f7faa5efa42c 578s 1..4 578s # Start of struct-info tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/system-config1:/tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/system-data1:/tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_612OK3/struct-info/field-iterators/.dirs/runtime 578s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 578s # /struct-info/field-iterators summary: Test iterating through a struct's fields with gi_struct_info_get_field() 578s ok 1 /struct-info/field-iterators 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/system-config1:/tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/system-data1:/tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_612OK3/struct-info/sizeof-gvalue/.dirs/runtime 578s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 578s # /struct-info/sizeof-gvalue summary: Test that gi_struct_info_get_size() reports the correct sizeof GValue 578s ok 2 /struct-info/sizeof-gvalue 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/system-config1:/tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/system-data1:/tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_612OK3/struct-info/is-pointer-for-struct-method-arg/.dirs/runtime 578s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 578s # /struct-info/is-pointer-for-struct-method-arg summary: Test that a struct method reports the correct type with gi_type_info_is_pointer() 578s ok 3 /struct-info/is-pointer-for-struct-method-arg 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/system-config1:/tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/system-data1:/tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_612OK3/struct-info/boxed/.dirs/runtime 578s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 578s # /struct-info/boxed summary: Test that a boxed struct is recognised as such 578s ok - glib/struct-info.test 578s ok 4 /struct-info/boxed 578s # End of struct-info tests 578s # Running test: glib/type-flags.test 578s ok - glib/type-flags.test 578s # Running test: glib/application-command-line.test 578s TAP version 14 578s # random seed: R02S54ecdef03cc7a6d3e9f369b9f31a22e0 578s 1..4 578s # Start of type tests 578s # Start of flags tests 578s ok 1 /type/flags/interface 578s ok 2 /type/flags/final 578s # /type/flags/deprecated summary: Test that trying to instantiate a deprecated type results in a warning. 578s ok 3 /type/flags/deprecated 578s # Start of final tests 578s ok 4 /type/flags/final/instance-check 578s # End of final tests 578s # End of flags tests 578s # End of type tests 578s TAP version 14 578s # random seed: R02Sd1f8a2ef1837bcf868c84b3d1b0d9766 578s 1..1 578s # Start of application-command-line tests 578s ok 1 /application-command-line/basic-properties 578s # End of application-command-line tests 578s ok - glib/application-command-line.test 578s # Running test: glib/dir.test 578s TAP version 14 578s # random seed: R02S9eadb9de4d62a6863120a0c2911edbee 578s 1..3 578s # Start of dir tests 578s ok 1 /dir/read 578s ok 2 /dir/nonexisting 578s # /dir/refcounting summary: Test refcounting interactions with g_dir_close() 578s ok 3 /dir/refcounting 578s # End of dir tests 578s ok - glib/dir.test 578s # Running test: glib/utils.test 578s TAP version 14 578s # random seed: R02S74881268f2df2b7732b7f208e7ba2a0f 578s 1..41 578s # Start of utils tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/language-names/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/language-names/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/language-names/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/language-names/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/language-names/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/language-names/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/language-names/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/language-names/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/language-names/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/language-names/.dirs/runtime 578s ok 1 /utils/language-names 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/locale-variants/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/locale-variants/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/locale-variants/.dirs/runtime 578s # Testing locale ‘en’ 578s # Testing locale ‘sr@latin’ 578s # Testing locale ‘fr_BE’ 578s # Testing locale ‘sr_SR@latin’ 578s # Testing locale ‘sr_SR@latin.UTF-8’ 578s # Testing locale ‘sr@latin_invalid’ 578s # Testing locale ‘sr.UTF-8@latin’ 578s # Testing locale ‘sr.UTF-8_latin’ 578s # Testing locale ‘sr.UTF-8@latin_invalid’ 578s ok 2 /utils/locale-variants 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/version/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/version/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/version/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/version/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/version/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/version/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/version/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/version/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/version/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/version/.dirs/runtime 578s ok 3 /utils/version 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/appname/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/appname/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/appname/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/appname/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/appname/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/appname/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/appname/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/appname/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/appname/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/appname/.dirs/runtime 578s ok 4 /utils/appname 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/prgname-thread-safety/.dirs/runtime 578s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 578s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 578s ok 5 /utils/prgname-thread-safety 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/tmpdir/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/tmpdir/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/tmpdir/.dirs/runtime 578s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 578s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/tmpdir: No such file or directory 578s ok 6 /utils/tmpdir 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/basic_bits/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/basic_bits/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/basic_bits/.dirs/runtime 578s ok 7 /utils/basic_bits 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/bits/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/bits/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/bits/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/bits/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/bits/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/bits/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/bits/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/bits/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/bits/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/bits/.dirs/runtime 578s ok 8 /utils/bits 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/swap/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/swap/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/swap/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/swap/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/swap/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/swap/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/swap/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/swap/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/swap/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/swap/.dirs/runtime 578s ok 9 /utils/swap 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/find-program/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/find-program/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/find-program/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/find-program/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/find-program/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/find-program/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/find-program/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/find-program/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/find-program/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/find-program/.dirs/runtime 578s ok 10 /utils/find-program 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/find-program-for-path/.dirs/runtime 578s ok 11 /utils/find-program-for-path 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/debug/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/debug/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/debug/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/debug/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/debug/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/debug/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/debug/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/debug/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/debug/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/debug/.dirs/runtime 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/debug: No such file or directory 578s ok 12 /utils/debug 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/codeset/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/codeset/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/codeset/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/codeset/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/codeset/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/codeset/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/codeset/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/codeset/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/codeset/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/codeset/.dirs/runtime 578s ok 13 /utils/codeset 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/codeset2/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/codeset2/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/codeset2/.dirs/runtime 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/codeset2: No such file or directory 578s ok 14 /utils/codeset2 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/console-charset/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/console-charset/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/console-charset/.dirs/runtime 578s ok 15 /utils/console-charset 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/gettext/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/gettext/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/gettext/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/gettext/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/gettext/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/gettext/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/gettext/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/gettext/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/gettext/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/gettext/.dirs/runtime 578s ok 16 /utils/gettext 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/username/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/username/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/username/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/username/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/username/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/username/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/username/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/username/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/username/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/username/.dirs/runtime 578s ok 17 /utils/username 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/realname/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/realname/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/realname/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/realname/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/realname/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/realname/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/realname/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/realname/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/realname/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/realname/.dirs/runtime 578s ok 18 /utils/realname 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/hostname/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/hostname/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/hostname/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/hostname/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/hostname/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/hostname/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/hostname/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/hostname/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/hostname/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/hostname/.dirs/runtime 578s ok 19 /utils/hostname 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/os-info/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/os-info/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/os-info/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/os-info/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/os-info/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/os-info/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/os-info/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/os-info/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/os-info/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/os-info/.dirs/runtime 578s # NAME: Ubuntu 578s ok 20 /utils/os-info 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-pointer/.dirs/runtime 578s ok 21 /utils/clear-pointer 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-pointer-cast/.dirs/runtime 578s ok 22 /utils/clear-pointer-cast 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/take-pointer/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/take-pointer/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/take-pointer/.dirs/runtime 578s ok 23 /utils/take-pointer 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-source/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-source/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-source/.dirs/runtime 578s ok 24 /utils/clear-source 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/misc-mem/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/misc-mem/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/misc-mem/.dirs/runtime 578s ok 25 /utils/misc-mem 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/aligned-mem/.dirs/runtime 578s # /utils/aligned-mem summary: Aligned memory allocator 578s # Alignment must not be zero 578s # Alignment must be a power of two 578s # Alignment must be a multiple of sizeof(void*) 578s ok 26 /utils/aligned-mem 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/free-sized/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/free-sized/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/free-sized/.dirs/runtime 578s # /utils/free-sized summary: Check that g_free_sized() works 578s ok 27 /utils/free-sized 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/nullify/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/nullify/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/nullify/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/nullify/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/nullify/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/nullify/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/nullify/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/nullify/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/nullify/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/nullify/.dirs/runtime 578s ok 28 /utils/nullify 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/atexit/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/atexit/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/atexit/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/atexit/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/atexit/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/atexit/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/atexit/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/atexit/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/atexit/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/atexit/.dirs/runtime 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/atexit: No such file or directory 578s ok 29 /utils/atexit 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/check-setuid/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/check-setuid/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/check-setuid/.dirs/runtime 578s ok 30 /utils/check-setuid 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/int-limits/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/int-limits/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/int-limits/.dirs/runtime 578s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 578s ok 31 /utils/int-limits 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-list/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-list/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-list/.dirs/runtime 578s ok 32 /utils/clear-list 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-slist/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-slist/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-slist/.dirs/runtime 578s ok 33 /utils/clear-slist 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/steal-handle-id/.dirs/runtime 578s ok 34 /utils/steal-handle-id 578s # Start of user-special-dirs tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/user-special-dirs/desktop/.dirs/runtime 578s ok 35 /utils/user-special-dirs/desktop 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked/.dirs/runtime 578s # /utils/user-special-dirs/load-unlocked summary: Tests error and corner cases of user-dirs.dirs content. 578s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/4800 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/user-special-dirs/load-unlocked: No such file or directory 578s ok 36 /utils/user-special-dirs/load-unlocked 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks/.dirs/runtime 578s # /utils/user-special-dirs/reload-leaks summary: Tests that old user special dirs values are deliberately leaked on reload. 578s Unable to clean up temporary directory /tmp/test_utils_85UOK3/utils/user-special-dirs/reload-leaks: No such file or directory 578s ok 37 /utils/user-special-dirs/reload-leaks 578s # End of user-special-dirs tests 578s # Start of clear-pointer tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/clear-pointer/side-effects/.dirs/runtime 578s ok 38 /utils/clear-pointer/side-effects 578s # End of clear-pointer tests 578s # Start of aligned-mem tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/aligned-mem/alignment/.dirs/runtime 578s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 578s ok 39 /utils/aligned-mem/alignment 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/aligned-mem/zeroed/.dirs/runtime 578s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 578s ok 40 /utils/aligned-mem/zeroed 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/system-config1:/tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/system-data1:/tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils_85UOK3/utils/aligned-mem/free-sized/.dirs/runtime 578s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 578s ok 41 /utils/aligned-mem/free-sized 578s # Start of subprocess tests 578s # End of subprocess tests 578s # End of aligned-mem tests 578s # End of utils tests 578s ok - glib/utils.test 578s # Running test: glib/mimeapps.test 578s TAP version 14 578s # random seed: R02S266734e4560e3979c85032797cd2de4d 578s 1..13 578s # Start of appinfo tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/data/applications/mimeinfo.cache' 578s ok 1 /appinfo/all 578s # Start of mime tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/all/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config 578s ok 2 /appinfo/mime/api 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/api/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config 578s ok 3 /appinfo/mime/default 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/default/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config 578s ok 4 /appinfo/mime/file 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/file/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/config 578s ok 5 /appinfo/mime/scheme-handler 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/scheme-handler/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config 578s ok 6 /appinfo/mime/default-last-used 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/default-last-used/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/config 578s ok 7 /appinfo/mime/ignore-nonexisting 578s # End of mime tests 578s # Start of mime-symlinked tests 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-data1/applications' 578s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime/ignore-nonexisting/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config 578s ok 8 /appinfo/mime-symlinked/api 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/api/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config 578s ok 9 /appinfo/mime-symlinked/default 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config 578s ok 10 /appinfo/mime-symlinked/file 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/file/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/config 578s ok 11 /appinfo/mime-symlinked/scheme-handler 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/scheme-handler/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config 578s ok 12 /appinfo/mime-symlinked/default-last-used 578s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/home 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/cache 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-config1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-config2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/config 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-data1:/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-data2 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/state 578s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/runtime 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-data1/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/system-data1/applications/mimeapps.list.c' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/myapp.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/myapp2.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/myapp3.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/myapp4.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/myapp5.desktop' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/nosuchapp.desktop' 578s # removing '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/mimeapps.list' 578s # creating '/tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/data/applications/mimeinfo.cache' 578s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/default-last-used/.dirs/config to /tmp/test_mimeapps_X2JKK3/appinfo/mime-symlinked/ignore-nonexisting/.dirs/config 578s ok 13 /appinfo/mime-symlinked/ignore-nonexisting 578s # End of mime-symlinked tests 578s # End of appinfo tests 578s ok - glib/mimeapps.test 578s # Running test: glib/mainloop.test 578s TAP version 14 578s # random seed: R02S1a95715abeb76fa48f6876ad3a9f2138 578s 1..47 578s # Start of maincontext tests 578s ok 1 /maincontext/basic 578s # Add same-priority sources: 39 578s # Find each source: 20 579s # Remove in random order: 56 579s ok 2 /maincontext/nsources_same_priority 579s # Add different-priority sources: 45 579s # Find each source: 19 579s # Remove in random order: 60 579s ok 3 /maincontext/nsources_different_priority 579s # Executing: glib/mainloop.test 579s # Add sources from threads: 195 579s # Remove sources from threads: 240 579s ok 4 /maincontext/nsources_threadpool 579s ok 5 /maincontext/source_finalization 579s # /maincontext/idle-once summary: Test g_idle_add_once() works 579s ok 6 /maincontext/idle-once 579s # /maincontext/timeout-once summary: Test g_timeout_add_once() works 579s ok 7 /maincontext/timeout-once 579s # /maincontext/context-ref-in-source-callbackfuncs-unref summary: Tests if calling GSource API in GSourceCallbackFuncs.unref does not deadlock attempting to retrieve the relevant GMainContext. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/3725 579s ok 8 /maincontext/context-ref-in-source-callbackfuncs-unref 579s # Start of source_finalization_from_source tests 579s # /maincontext/source_finalization_from_source/0 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 9 /maincontext/source_finalization_from_source/0 579s # /maincontext/source_finalization_from_source/1 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 10 /maincontext/source_finalization_from_source/1 579s # /maincontext/source_finalization_from_source/2 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 11 /maincontext/source_finalization_from_source/2 579s # /maincontext/source_finalization_from_source/3 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 12 /maincontext/source_finalization_from_source/3 579s # /maincontext/source_finalization_from_source/4 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 13 /maincontext/source_finalization_from_source/4 579s # /maincontext/source_finalization_from_source/5 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 14 /maincontext/source_finalization_from_source/5 579s # /maincontext/source_finalization_from_source/6 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 15 /maincontext/source_finalization_from_source/6 579s # /maincontext/source_finalization_from_source/7 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 16 /maincontext/source_finalization_from_source/7 579s # /maincontext/source_finalization_from_source/8 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 17 /maincontext/source_finalization_from_source/8 579s # /maincontext/source_finalization_from_source/9 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 579s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 579s ok 18 /maincontext/source_finalization_from_source/9 579s # End of source_finalization_from_source tests 579s # Start of source_finalization_from_dispatch tests 579s # /maincontext/source_finalization_from_dispatch/0 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 579s ok 19 /maincontext/source_finalization_from_dispatch/0 579s # /maincontext/source_finalization_from_dispatch/1 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 579s ok 20 /maincontext/source_finalization_from_dispatch/1 579s # /maincontext/source_finalization_from_dispatch/2 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 579s ok 21 /maincontext/source_finalization_from_dispatch/2 579s # End of source_finalization_from_dispatch tests 579s # End of maincontext tests 579s # Start of mainloop tests 579s ok 22 /mainloop/basic 579s ok 23 /mainloop/timeouts # SKIP Not running timing heavy test 579s ok 24 /mainloop/priorities 580s ok 25 /mainloop/invoke 580s # slow test /mainloop/invoke executed in 0.50 secs 581s ok 26 /mainloop/child_sources 581s # slow test /mainloop/child_sources executed in 1.18 secs 583s ok 27 /mainloop/recursive_child_sources 583s # slow test /mainloop/recursive_child_sources executed in 2.17 secs 583s ok 28 /mainloop/recursive_loop_child_sources 583s ok 29 /mainloop/swapping_child_sources 583s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=701283 583s ok 30 /mainloop/blocked_child_sources 584s # Executing: glib/mainloop.test 584s ok 31 /mainloop/source_time 584s # slow test /mainloop/source_time executed in 1.00 secs 584s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=687098 584s ok 32 /mainloop/overflow 585s ok 33 /mainloop/ready-time 585s # slow test /mainloop/ready-time executed in 0.50 secs 585s ok 34 /mainloop/wakeup 585s ok 35 /mainloop/remove-invalid 585s ok 36 /mainloop/unref-while-pending 586s ok 37 /mainloop/unix-fd 586s # slow test /mainloop/unix-fd executed in 1.54 secs 586s ok 38 /mainloop/unix-fd-source 586s ok 39 /mainloop/source-unix-fd-api 586s ok 40 /mainloop/wait 586s ok 41 /mainloop/unix-file-poll 586s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1592 586s ok 42 /mainloop/unix-fd-priority 586s ok 43 /mainloop/nfds 586s ok 44 /mainloop/steal-fd 588s ok - glib/mainloop.test 588s # Running test: glib/autoptr-gio.test 588s ok 45 /mainloop/simultaneous-source-context-destruction 588s # slow test /mainloop/simultaneous-source-context-destruction executed in 1.38 secs 588s # Start of ownerless-polling tests 588s ok 46 /mainloop/ownerless-polling/attach-first 588s ok 47 /mainloop/ownerless-polling/pop-first 588s # End of ownerless-polling tests 588s # End of mainloop tests 588s TAP version 14 588s # random seed: R02S1a690fff56ebfcd9bdedbf2539dca923 588s 1..1 588s # Start of autoptr tests 588s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 588s ok 1 /autoptr/autoptr 588s # End of autoptr tests 588s ok - glib/autoptr-gio.test 588s # Running test: glib/properties-refcount2.test 588s TAP version 14 588s # random seed: R02S2109862fa933846b4531b3a50e0c7419 588s 1..1 588s # Start of gobject tests 588s # Start of refcount tests 588s # init 0x182f383d4eb0 588s # 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 588s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # Executing: glib/properties-refcount2.test 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 589s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 590s # . 591s # . 591s # . 591s # . 591s # . 591s # . 591s # . 591s # . 591s ok - glib/properties-refcount2.test 591s # Running test: glib/closure-refcount.test 591s # . 591s # dispose 0x182f383d4eb0! 591s # 591s ok 1 /gobject/refcount/properties-2 591s # slow test /gobject/refcount/properties-2 executed in 2.88 secs 591s # End of refcount tests 591s # End of gobject tests 591s TAP version 14 591s # random seed: R02S468af8afdf3adf1f0dd40bb36b9fae70 591s 1..1 591s # Start of closure tests 591s # Init 0x1a0c211b6db0 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from thread1 591s # Yielding from main thread 591s # Yielding from thread2 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 591s # Yielding from main thread 592s # Yielding from thread1 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from thread2 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from thread1 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from thread2 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from main thread 592s # Yielding from thread1 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from thread2 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from thread1 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from thread2 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 593s # Yielding from main thread 594s # Yielding from thread1 594s # Yielding from thread2 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Executing: glib/closure-refcount.test 594s # Yielding from thread2 594s # Yielding from main thread 594s # Yielding from thread1 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from main thread 594s # Yielding from thread2 594s # Yielding from main thread 594s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from thread1 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from thread2 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from thread1 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from main thread 595s # Yielding from thread2 595s # Yielding from main thread 595s # Yielding from thread1 595s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from thread2 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from thread1 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from thread2 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from main thread 596s # Yielding from thread1 596s # Yielding from main thread 597s ok - glib/closure-refcount.test 597s # Stopping 597s # Stopped 597s ok 1 /closure/refcount 597s # slow test /closure/refcount executed in 5.77 secs 597s # End of closure tests 597s TAP version 14 597s # random seed: R02Se797b1e33db7f13b8acfa25a5b1fc782 597s 1..1 597s # Start of utils tests 597s ok 1 /utils/xdgdirs 597s # End of utils tests 597s # Running test: glib/utils-unisolated.test 597s ok - glib/utils-unisolated.test 597s # Running test: glib/gdbus-bz627724.test 597s TAP version 14 597s # random seed: R02S64699e80ed521d2ed0e338db30dbb09f 597s 1..1 597s # Start of gdbus tests 597s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/home 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/cache 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/system-config1:/tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/system-config2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/config 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/system-data1:/tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/system-data2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/data 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/state 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-bz627724_FONDK3/gdbus/bz627724/.dirs/runtime 597s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 597s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 597s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 597s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 597s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 597s ok - glib/gdbus-bz627724.test 597s # Running test: glib/gdbus-error.test 597s ok 1 /gdbus/bz627724 597s # End of gdbus tests 597s TAP version 14 597s # random seed: R02Se640056ee1c758771f0b207ac97c84fc 597s 1..4 597s # Start of gdbus tests 597s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/home 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/cache 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/system-config1:/tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/system-config2 597s ok - glib/gdbus-error.test 597s # Running test: glib/task.test 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/config 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/system-data1:/tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/system-data2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/data 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/state 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_S0HDK3/gdbus/registered-errors/.dirs/runtime 597s ok 1 /gdbus/registered-errors 597s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/home 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/cache 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/system-config1:/tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/system-config2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/config 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/system-data1:/tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/system-data2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/data 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/state 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_S0HDK3/gdbus/unregistered-errors/.dirs/runtime 597s ok 2 /gdbus/unregistered-errors 597s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/home 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/cache 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/system-config1:/tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/system-config2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/config 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/system-data1:/tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/system-data2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/data 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/state 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_S0HDK3/gdbus/transparent-gerror/.dirs/runtime 597s ok 3 /gdbus/transparent-gerror 597s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/home 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/cache 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/system-config1:/tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/system-config2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/config 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/system-data1:/tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/system-data2 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/data 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/state 597s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_S0HDK3/gdbus/register-error/.dirs/runtime 597s ok 4 /gdbus/register-error 597s # End of gdbus tests 597s TAP version 14 597s # random seed: R02S07f4f3c3286bf8643209d9b2af4d0fba 597s 1..36 597s # Start of gtask tests 597s ok 1 /gtask/basic 597s ok 2 /gtask/error 597s ok 3 /gtask/error-literal 597s ok 4 /gtask/error-literal-from-variable 597s ok 5 /gtask/return-from-same-iteration 597s ok 6 /gtask/return-from-toplevel 597s ok 7 /gtask/return-from-anon-thread 597s ok 8 /gtask/return-from-wrong-thread 597s ok 9 /gtask/no-callback 597s ok 10 /gtask/report-error 597s ok 11 /gtask/priority 597s ok 12 /gtask/name 597s ok 13 /gtask/static-name 597s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1608 597s ok 14 /gtask/asynchronous-cancellation 597s ok 15 /gtask/check-cancellable 597s ok 16 /gtask/return-if-cancelled 597s ok 17 /gtask/run-in-thread 597s ok 18 /gtask/run-in-thread-sync 597s ok 19 /gtask/run-in-thread-priority 597s ok 20 /gtask/run-in-thread-nested 598s ok 21 /gtask/run-in-thread-overflow 598s # slow test /gtask/run-in-thread-overflow executed in 0.52 secs 598s # GLib-GIO-DEBUG: GTask 0x1b1ce24aaef0 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 598s # GLib-GIO-DEBUG: GTask 0x1b1ce24ab080 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 598s ok 22 /gtask/return-on-cancel 598s # GLib-GIO-DEBUG: GTask 0x1b1ce24414d0 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 598s # GLib-GIO-DEBUG: GTask 0x1b1ce2441210 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 598s ok 23 /gtask/return-on-cancel-sync 598s ok 24 /gtask/return-on-cancel-atomic 598s ok - glib/task.test 598s # Running test: glib/reference.test 598s ok 25 /gtask/return-pointer 598s ok 26 /gtask/return-value 598s ok 27 /gtask/return-prefixed-error 598s ok 28 /gtask/object-keepalive 598s ok 29 /gtask/legacy-error 598s ok 30 /gtask/finalize-without-return 598s # Start of name tests 598s ok 31 /gtask/name/macro-wrapper 598s # End of name tests 598s # Start of return tests 598s ok 32 /gtask/return/error-first 598s ok 33 /gtask/return/value-first 598s # Start of in-idle tests 598s ok 34 /gtask/return/in-idle/error-first 598s ok 35 /gtask/return/in-idle/value-first 598s # End of in-idle tests 598s # End of return tests 598s # Start of attach-source tests 598s # /gtask/attach-source/set-name summary: Test that attaching a source to a task will set the source’s name if unset 598s ok 36 /gtask/attach-source/set-name 598s # End of attach-source tests 598s # End of gtask tests 598s TAP version 14 598s # random seed: R02Sa79e9fd5e1031cfc134416d8267ef2a0 598s 1..29 598s # Start of type tests 598s ok 1 /type/fundamentals 598s ok 2 /type/qdata 598s ok 3 /type/query 598s ok 4 /type/class-private 598s # End of type tests 598s # Start of object tests 598s ok 5 /object/clear 598s ok 6 /object/clear-function 598s ok 7 /object/set 598s ok 8 /object/set-function 598s ok 9 /object/value 598s ok 10 /object/initially-unowned 598s ok 11 /object/weak-pointer 598s ok 12 /object/weak-ref 598s ok 13 /object/toggle-ref 598s ok 14 /object/qdata 598s ok 15 /object/qdata2 598s # Start of set tests 598s # /object/set/derived-type summary: Check that g_set_object() doesn’t give strict aliasing warnings when used on types derived from GObject 598s ok 16 /object/set/derived-type 598s # End of set tests 598s # Start of weak-pointer tests 598s ok 17 /object/weak-pointer/clear 598s ok 18 /object/weak-pointer/clear-function 598s ok 19 /object/weak-pointer/set 598s ok 20 /object/weak-pointer/set-function 598s # End of weak-pointer tests 598s # Start of weak-ref tests 598s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 598s # /object/weak-ref/on-dispose summary: Test that a weak ref set during dispose vfunc is cleared 598s ok 21 /object/weak-ref/on-dispose 598s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/865 598s # /object/weak-ref/on-run-dispose summary: Test that a weak ref is cleared on g_object_run_dispose() 598s ok 22 /object/weak-ref/on-run-dispose 598s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 598s # /object/weak-ref/on-toggle-notify summary: Test that a weak ref set on toggle notify is cleared 598s ok 23 /object/weak-ref/on-toggle-notify 598s ok 24 /object/weak-ref/in-toggle-notify 598s ok 25 /object/weak-ref/many 598s # Start of concurrent tests 598s ok 26 /object/weak-ref/concurrent/0 598s ok - glib/reference.test 598s ok 27 /object/weak-ref/concurrent/1 598s # End of concurrent tests 598s # End of weak-ref tests 598s # Start of toggle-ref tests 598s ok 28 /object/toggle-ref/ref-on-dispose 598s ok 29 /object/toggle-ref/ref-and-notify-on-dispose 598s # End of toggle-ref tests 598s # End of object tests 598s # Running test: glib/g-file-info-filesystem-readonly.test 598s TAP version 14 598s ok - glib/g-file-info-filesystem-readonly.test 598s # random seed: R02S01d874d11188b9ee1f25e1db4af9aecc 598s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=787731 598s 1..2 598s # Start of g-file-info-filesystem-readonly tests 598s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/home 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/cache 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-config1:/tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-config2 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/config 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-data1:/tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-data2 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/data 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/state 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro/.dirs/runtime 598s ok 1 /g-file-info-filesystem-readonly/test-fs-ro # SKIP 'bindfs' and 'fusermount' commands are needed to run this test 598s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/home 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/cache 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-config1:/tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-config2 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/config 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-data1:/tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-data2 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/data 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/state 598s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_g-file-info-filesystem-readonly_YHL9J3/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/runtime 598s ok 2 /g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor # SKIP 'bindfs' and 'fusermount' commands are needed to run this test 598s # End of g-file-info-filesystem-readonly tests 598s # Running test: glib/io-channel-basic.test 598s TAP version 14 598s # random seed: R02S3475865872aaa0f0161b370c7f118237 598s 1..1 598s # Start of gio tests 598s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 598s # random seed: R02S133bb997820dd0aa7a297d656c792c86 598s # GLib-DEBUG: io-channel-basic: child writing 8+2733 bytes to 6 598s # GLib-DEBUG: io-channel-basic: ...from 5: IN 598s # GLib-DEBUG: io-channel-basic: ...from 5: 2733 bytes 598s # GLib-DEBUG: io-channel-basic: ...from 5: OK 598s # GLib-DEBUG: io-channel-basic: child writing 8+3022 bytes to 6 598s # GLib-DEBUG: io-channel-basic: ...from 5: IN 598s # GLib-DEBUG: io-channel-basic: ...from 5: 3022 bytes 598s # GLib-DEBUG: io-channel-basic: ...from 5: OK 598s # GLib-DEBUG: io-channel-basic: child writing 8+1410 bytes to 6 598s # GLib-DEBUG: io-channel-basic: ...from 5: IN 598s # GLib-DEBUG: io-channel-basic: ...from 5: 1410 bytes 598s # GLib-DEBUG: io-channel-basic: ...from 5: OK 599s # GLib-DEBUG: io-channel-basic: child writing 8+385 bytes to 6 599s # GLib-DEBUG: io-channel-basic: ...from 5: IN 599s # GLib-DEBUG: io-channel-basic: ...from 5: 385 bytes 599s # GLib-DEBUG: io-channel-basic: ...from 5: OK 599s # GLib-DEBUG: io-channel-basic: child writing 8+2403 bytes to 6 599s # GLib-DEBUG: io-channel-basic: ...from 5: IN 599s # GLib-DEBUG: io-channel-basic: ...from 5: 2403 bytes 599s # GLib-DEBUG: io-channel-basic: ...from 5: OK 599s # Executing: glib/io-channel-basic.test 599s # GLib-DEBUG: io-channel-basic: child writing 8+2287 bytes to 6 599s # GLib-DEBUG: io-channel-basic: ...from 5: IN 599s # GLib-DEBUG: io-channel-basic: ...from 5: 2287 bytes 599s # GLib-DEBUG: io-channel-basic: ...from 5: OK 599s # GLib-DEBUG: io-channel-basic: child writing 8+4643 bytes to 6 599s # GLib-DEBUG: io-channel-basic: ...from 5: IN 599s # GLib-DEBUG: io-channel-basic: ...from 5: 4643 bytes 599s # GLib-DEBUG: io-channel-basic: ...from 5: OK 600s # GLib-DEBUG: io-channel-basic: child writing 8+2607 bytes to 6 600s # GLib-DEBUG: io-channel-basic: ...from 5: IN 600s # GLib-DEBUG: io-channel-basic: ...from 5: 2607 bytes 600s # GLib-DEBUG: io-channel-basic: ...from 5: OK 600s # GLib-DEBUG: io-channel-basic: child writing 8+2880 bytes to 6 600s # GLib-DEBUG: io-channel-basic: ...from 5: IN 600s # GLib-DEBUG: io-channel-basic: ...from 5: 2880 bytes 600s # GLib-DEBUG: io-channel-basic: ...from 5: OK 600s # GLib-DEBUG: io-channel-basic: child writing 8+2108 bytes to 6 600s # GLib-DEBUG: io-channel-basic: ...from 5: IN 600s # GLib-DEBUG: io-channel-basic: ...from 5: 2108 bytes 600s # GLib-DEBUG: io-channel-basic: ...from 5: OK 600s # GLib-DEBUG: io-channel-basic: child writing 8+2022 bytes to 6 600s # GLib-DEBUG: io-channel-basic: ...from 5: IN 600s # GLib-DEBUG: io-channel-basic: ...from 5: 2022 bytes 600s # GLib-DEBUG: io-channel-basic: ...from 5: OK 601s # GLib-DEBUG: io-channel-basic: child writing 8+1966 bytes to 6 601s # GLib-DEBUG: io-channel-basic: ...from 5: IN 601s # GLib-DEBUG: io-channel-basic: ...from 5: 1966 bytes 601s # GLib-DEBUG: io-channel-basic: ...from 5: OK 601s # GLib-DEBUG: io-channel-basic: child writing 8+4888 bytes to 6 601s # GLib-DEBUG: io-channel-basic: ...from 5: IN 601s # GLib-DEBUG: io-channel-basic: ...from 5: 4888 bytes 601s # GLib-DEBUG: io-channel-basic: ...from 5: OK 601s # GLib-DEBUG: io-channel-basic: child writing 8+1906 bytes to 6 601s # GLib-DEBUG: io-channel-basic: ...from 5: IN 601s # GLib-DEBUG: io-channel-basic: ...from 5: 1906 bytes 601s # GLib-DEBUG: io-channel-basic: ...from 5: OK 602s # GLib-DEBUG: io-channel-basic: child writing 8+1223 bytes to 6 602s # GLib-DEBUG: io-channel-basic: ...from 5: IN 602s # GLib-DEBUG: io-channel-basic: ...from 5: 1223 bytes 602s # GLib-DEBUG: io-channel-basic: ...from 5: OK 602s # GLib-DEBUG: io-channel-basic: child writing 8+3640 bytes to 6 602s # GLib-DEBUG: io-channel-basic: ...from 5: IN 602s # GLib-DEBUG: io-channel-basic: ...from 5: 3640 bytes 602s # GLib-DEBUG: io-channel-basic: ...from 5: OK 602s # GLib-DEBUG: io-channel-basic: child writing 8+4753 bytes to 6 602s # GLib-DEBUG: io-channel-basic: ...from 5: IN 602s # GLib-DEBUG: io-channel-basic: ...from 5: 4753 bytes 602s # GLib-DEBUG: io-channel-basic: ...from 5: OK 602s # GLib-DEBUG: io-channel-basic: child writing 8+4399 bytes to 6 602s # GLib-DEBUG: io-channel-basic: ...from 5: IN 602s # GLib-DEBUG: io-channel-basic: ...from 5: 4399 bytes 602s # GLib-DEBUG: io-channel-basic: ...from 5: OK 603s # GLib-DEBUG: io-channel-basic: child writing 8+4790 bytes to 6 603s # GLib-DEBUG: io-channel-basic: ...from 5: IN 603s # GLib-DEBUG: io-channel-basic: ...from 5: 4790 bytes 603s # GLib-DEBUG: io-channel-basic: ...from 5: OK 603s # GLib-DEBUG: io-channel-basic: child writing 8+2346 bytes to 6 603s # GLib-DEBUG: io-channel-basic: ...from 5: IN 603s # GLib-DEBUG: io-channel-basic: ...from 5: 2346 bytes 603s # GLib-DEBUG: io-channel-basic: ...from 5: OK 603s # GLib-DEBUG: io-channel-basic: child writing 8+4359 bytes to 6 603s # GLib-DEBUG: io-channel-basic: ...from 5: IN 603s # GLib-DEBUG: io-channel-basic: ...from 5: 4359 bytes 603s # GLib-DEBUG: io-channel-basic: ...from 5: OK 603s # GLib-DEBUG: io-channel-basic: child writing 8+4488 bytes to 6 603s # GLib-DEBUG: io-channel-basic: ...from 5: IN 603s # GLib-DEBUG: io-channel-basic: ...from 5: 4488 bytes 603s # GLib-DEBUG: io-channel-basic: ...from 5: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+256 bytes to 6 604s # GLib-DEBUG: io-channel-basic: ...from 5: IN 604s # GLib-DEBUG: io-channel-basic: ...from 5: 256 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 5: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+2405 bytes to 6 604s # GLib-DEBUG: io-channel-basic: child exiting, closing 6 604s # GLib-DEBUG: io-channel-basic: ...from 5: HUP IN 604s # GLib-DEBUG: io-channel-basic: ...from 5: 2405 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 5: OK 604s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 604s # random seed: R02S66aef8f4e39e97d07607584534cf9669 604s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 604s # random seed: R02Sc5c7a9ff865b83f4d296c39eff973c6b 604s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 604s # random seed: R02S065d60bd887f74d99191907f740e5f62 604s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 604s # random seed: R02S263f5d0dc6c951f4d691c000dc44ef4b 604s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 604s # random seed: R02S230158b4ab01376b860dcfa45cf9fb2f 604s # Executing: glib/io-channel-basic.test 604s # GLib-DEBUG: io-channel-basic: child writing 8+157 bytes to 9 604s # GLib-DEBUG: io-channel-basic: ...from 8: IN 604s # GLib-DEBUG: io-channel-basic: ...from 8: 157 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 8: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+2906 bytes to 11 604s # GLib-DEBUG: io-channel-basic: ...from 10: IN 604s # GLib-DEBUG: io-channel-basic: ...from 10: 2906 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 10: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+3464 bytes to 15 604s # GLib-DEBUG: io-channel-basic: ...from 14: IN 604s # GLib-DEBUG: io-channel-basic: ...from 14: 3464 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 14: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+3274 bytes to 17 604s # GLib-DEBUG: io-channel-basic: ...from 16: IN 604s # GLib-DEBUG: io-channel-basic: ...from 16: 3274 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 16: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+3950 bytes to 13 604s # GLib-DEBUG: io-channel-basic: ...from 12: IN 604s # GLib-DEBUG: io-channel-basic: ...from 12: 3950 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 12: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+4725 bytes to 9 604s # GLib-DEBUG: io-channel-basic: ...from 8: IN 604s # GLib-DEBUG: io-channel-basic: ...from 8: 4725 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 8: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+4745 bytes to 11 604s # GLib-DEBUG: io-channel-basic: ...from 10: IN 604s # GLib-DEBUG: io-channel-basic: ...from 10: 4745 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 10: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+3195 bytes to 13 604s # GLib-DEBUG: io-channel-basic: ...from 12: IN 604s # GLib-DEBUG: io-channel-basic: ...from 12: 3195 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 12: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+3924 bytes to 15 604s # GLib-DEBUG: io-channel-basic: ...from 14: IN 604s # GLib-DEBUG: io-channel-basic: ...from 14: 3924 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 14: OK 604s # GLib-DEBUG: io-channel-basic: child writing 8+4269 bytes to 17 604s # GLib-DEBUG: io-channel-basic: ...from 16: IN 604s # GLib-DEBUG: io-channel-basic: ...from 16: 4269 bytes 604s # GLib-DEBUG: io-channel-basic: ...from 16: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+104 bytes to 9 605s # GLib-DEBUG: io-channel-basic: ...from 8: IN 605s # GLib-DEBUG: io-channel-basic: ...from 8: 104 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 8: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4664 bytes to 11 605s # GLib-DEBUG: io-channel-basic: ...from 10: IN 605s # GLib-DEBUG: io-channel-basic: ...from 10: 4664 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 10: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+1938 bytes to 15 605s # GLib-DEBUG: io-channel-basic: ...from 14: IN 605s # GLib-DEBUG: io-channel-basic: ...from 14: 1938 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 14: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+488 bytes to 13 605s # GLib-DEBUG: io-channel-basic: ...from 12: IN 605s # GLib-DEBUG: io-channel-basic: ...from 12: 488 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 12: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4779 bytes to 17 605s # GLib-DEBUG: io-channel-basic: ...from 16: IN 605s # GLib-DEBUG: io-channel-basic: ...from 16: 4779 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 16: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4341 bytes to 9 605s # GLib-DEBUG: io-channel-basic: ...from 8: IN 605s # GLib-DEBUG: io-channel-basic: ...from 8: 4341 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 8: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4981 bytes to 11 605s # GLib-DEBUG: io-channel-basic: ...from 10: IN 605s # GLib-DEBUG: io-channel-basic: ...from 10: 4981 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 10: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+705 bytes to 15 605s # GLib-DEBUG: io-channel-basic: ...from 14: IN 605s # GLib-DEBUG: io-channel-basic: ...from 14: 705 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 14: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+919 bytes to 17 605s # GLib-DEBUG: io-channel-basic: ...from 16: IN 605s # GLib-DEBUG: io-channel-basic: ...from 16: 919 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 16: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+2100 bytes to 13 605s # GLib-DEBUG: io-channel-basic: ...from 12: IN 605s # GLib-DEBUG: io-channel-basic: ...from 12: 2100 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 12: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+3476 bytes to 9 605s # GLib-DEBUG: io-channel-basic: ...from 8: IN 605s # GLib-DEBUG: io-channel-basic: ...from 8: 3476 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 8: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4491 bytes to 13 605s # GLib-DEBUG: io-channel-basic: ...from 12: IN 605s # GLib-DEBUG: io-channel-basic: ...from 12: 4491 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 12: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+894 bytes to 11 605s # GLib-DEBUG: io-channel-basic: ...from 10: IN 605s # GLib-DEBUG: io-channel-basic: ...from 10: 894 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 10: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+2291 bytes to 15 605s # GLib-DEBUG: io-channel-basic: ...from 14: IN 605s # GLib-DEBUG: io-channel-basic: ...from 14: 2291 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 14: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4996 bytes to 17 605s # GLib-DEBUG: io-channel-basic: ...from 16: IN 605s # GLib-DEBUG: io-channel-basic: ...from 16: 4996 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 16: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+3894 bytes to 9 605s # GLib-DEBUG: io-channel-basic: ...from 8: IN 605s # GLib-DEBUG: io-channel-basic: ...from 8: 3894 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 8: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4875 bytes to 13 605s # GLib-DEBUG: io-channel-basic: ...from 12: IN 605s # GLib-DEBUG: io-channel-basic: ...from 12: 4875 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 12: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4008 bytes to 11 605s # GLib-DEBUG: io-channel-basic: ...from 10: IN 605s # GLib-DEBUG: io-channel-basic: ...from 10: 4008 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 10: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4205 bytes to 15 605s # GLib-DEBUG: io-channel-basic: ...from 14: IN 605s # GLib-DEBUG: io-channel-basic: ...from 14: 4205 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 14: OK 605s # GLib-DEBUG: io-channel-basic: child writing 8+4454 bytes to 17 605s # GLib-DEBUG: io-channel-basic: ...from 16: IN 605s # GLib-DEBUG: io-channel-basic: ...from 16: 4454 bytes 605s # GLib-DEBUG: io-channel-basic: ...from 16: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+1292 bytes to 9 606s # GLib-DEBUG: io-channel-basic: ...from 8: IN 606s # GLib-DEBUG: io-channel-basic: ...from 8: 1292 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 8: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2474 bytes to 13 606s # GLib-DEBUG: io-channel-basic: ...from 12: IN 606s # GLib-DEBUG: io-channel-basic: ...from 12: 2474 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 12: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+3855 bytes to 11 606s # GLib-DEBUG: io-channel-basic: ...from 10: IN 606s # GLib-DEBUG: io-channel-basic: ...from 10: 3855 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 10: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2741 bytes to 15 606s # GLib-DEBUG: io-channel-basic: ...from 14: IN 606s # GLib-DEBUG: io-channel-basic: ...from 14: 2741 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 14: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2761 bytes to 17 606s # GLib-DEBUG: io-channel-basic: ...from 16: IN 606s # GLib-DEBUG: io-channel-basic: ...from 16: 2761 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 16: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+4652 bytes to 9 606s # GLib-DEBUG: io-channel-basic: ...from 8: IN 606s # GLib-DEBUG: io-channel-basic: ...from 8: 4652 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 8: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+1187 bytes to 13 606s # GLib-DEBUG: io-channel-basic: ...from 12: IN 606s # GLib-DEBUG: io-channel-basic: ...from 12: 1187 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 12: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+4200 bytes to 11 606s # GLib-DEBUG: io-channel-basic: ...from 10: IN 606s # GLib-DEBUG: io-channel-basic: ...from 10: 4200 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 10: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+3011 bytes to 15 606s # GLib-DEBUG: io-channel-basic: ...from 14: IN 606s # GLib-DEBUG: io-channel-basic: ...from 14: 3011 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 14: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2942 bytes to 17 606s # GLib-DEBUG: io-channel-basic: ...from 16: IN 606s # GLib-DEBUG: io-channel-basic: ...from 16: 2942 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 16: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2911 bytes to 9 606s # GLib-DEBUG: io-channel-basic: ...from 8: IN 606s # GLib-DEBUG: io-channel-basic: ...from 8: 2911 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 8: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+3008 bytes to 13 606s # GLib-DEBUG: io-channel-basic: ...from 12: IN 606s # GLib-DEBUG: io-channel-basic: ...from 12: 3008 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 12: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2621 bytes to 11 606s # GLib-DEBUG: io-channel-basic: ...from 10: IN 606s # GLib-DEBUG: io-channel-basic: ...from 10: 2621 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 10: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+1040 bytes to 15 606s # GLib-DEBUG: io-channel-basic: ...from 14: IN 606s # GLib-DEBUG: io-channel-basic: ...from 14: 1040 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 14: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+179 bytes to 17 606s # GLib-DEBUG: io-channel-basic: ...from 16: IN 606s # GLib-DEBUG: io-channel-basic: ...from 16: 179 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 16: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+2968 bytes to 9 606s # GLib-DEBUG: io-channel-basic: ...from 8: IN 606s # GLib-DEBUG: io-channel-basic: ...from 8: 2968 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 8: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+4969 bytes to 13 606s # GLib-DEBUG: io-channel-basic: ...from 12: IN 606s # GLib-DEBUG: io-channel-basic: ...from 12: 4969 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 12: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+558 bytes to 11 606s # GLib-DEBUG: io-channel-basic: ...from 10: IN 606s # GLib-DEBUG: io-channel-basic: ...from 10: 558 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 10: OK 606s # GLib-DEBUG: io-channel-basic: child writing 8+1885 bytes to 15 606s # GLib-DEBUG: io-channel-basic: ...from 14: IN 606s # GLib-DEBUG: io-channel-basic: ...from 14: 1885 bytes 606s # GLib-DEBUG: io-channel-basic: ...from 14: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+1355 bytes to 17 607s # GLib-DEBUG: io-channel-basic: ...from 16: IN 607s # GLib-DEBUG: io-channel-basic: ...from 16: 1355 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 16: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+2172 bytes to 9 607s # GLib-DEBUG: io-channel-basic: ...from 8: IN 607s # GLib-DEBUG: io-channel-basic: ...from 8: 2172 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 8: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+328 bytes to 13 607s # GLib-DEBUG: io-channel-basic: ...from 12: IN 607s # GLib-DEBUG: io-channel-basic: ...from 12: 328 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 12: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+1062 bytes to 11 607s # GLib-DEBUG: io-channel-basic: ...from 10: IN 607s # GLib-DEBUG: io-channel-basic: ...from 10: 1062 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 10: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+2485 bytes to 15 607s # GLib-DEBUG: io-channel-basic: ...from 14: IN 607s # GLib-DEBUG: io-channel-basic: ...from 14: 2485 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 14: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+303 bytes to 17 607s # GLib-DEBUG: io-channel-basic: ...from 16: IN 607s # GLib-DEBUG: io-channel-basic: ...from 16: 303 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 16: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+3415 bytes to 9 607s # GLib-DEBUG: io-channel-basic: ...from 8: IN 607s # GLib-DEBUG: io-channel-basic: ...from 8: 3415 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 8: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+2499 bytes to 13 607s # GLib-DEBUG: io-channel-basic: ...from 12: IN 607s # GLib-DEBUG: io-channel-basic: ...from 12: 2499 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 12: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+216 bytes to 11 607s # GLib-DEBUG: io-channel-basic: ...from 10: IN 607s # GLib-DEBUG: io-channel-basic: ...from 10: 216 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 10: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+4131 bytes to 15 607s # GLib-DEBUG: io-channel-basic: ...from 14: IN 607s # GLib-DEBUG: io-channel-basic: ...from 14: 4131 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 14: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+2441 bytes to 17 607s # GLib-DEBUG: io-channel-basic: ...from 16: IN 607s # GLib-DEBUG: io-channel-basic: ...from 16: 2441 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 16: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+4281 bytes to 9 607s # GLib-DEBUG: io-channel-basic: ...from 8: IN 607s # GLib-DEBUG: io-channel-basic: ...from 8: 4281 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 8: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+1698 bytes to 13 607s # GLib-DEBUG: io-channel-basic: ...from 12: IN 607s # GLib-DEBUG: io-channel-basic: ...from 12: 1698 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 12: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+3225 bytes to 11 607s # GLib-DEBUG: io-channel-basic: ...from 10: IN 607s # GLib-DEBUG: io-channel-basic: ...from 10: 3225 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 10: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+984 bytes to 15 607s # GLib-DEBUG: io-channel-basic: ...from 14: IN 607s # GLib-DEBUG: io-channel-basic: ...from 14: 984 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 14: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+4990 bytes to 17 607s # GLib-DEBUG: io-channel-basic: ...from 16: IN 607s # GLib-DEBUG: io-channel-basic: ...from 16: 4990 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 16: OK 607s # GLib-DEBUG: io-channel-basic: child writing 8+4376 bytes to 9 607s # GLib-DEBUG: io-channel-basic: ...from 8: IN 607s # GLib-DEBUG: io-channel-basic: ...from 8: 4376 bytes 607s # GLib-DEBUG: io-channel-basic: ...from 8: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+1259 bytes to 13 608s # GLib-DEBUG: io-channel-basic: ...from 12: IN 608s # GLib-DEBUG: io-channel-basic: ...from 12: 1259 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 12: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+2843 bytes to 15 608s # GLib-DEBUG: io-channel-basic: ...from 14: IN 608s # GLib-DEBUG: io-channel-basic: ...from 14: 2843 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 14: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3356 bytes to 11 608s # GLib-DEBUG: io-channel-basic: ...from 10: IN 608s # GLib-DEBUG: io-channel-basic: ...from 10: 3356 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 10: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3092 bytes to 17 608s # GLib-DEBUG: io-channel-basic: ...from 16: IN 608s # GLib-DEBUG: io-channel-basic: ...from 16: 3092 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 16: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+4368 bytes to 9 608s # GLib-DEBUG: io-channel-basic: ...from 8: IN 608s # GLib-DEBUG: io-channel-basic: ...from 8: 4368 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 8: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3880 bytes to 13 608s # GLib-DEBUG: io-channel-basic: ...from 12: IN 608s # GLib-DEBUG: io-channel-basic: ...from 12: 3880 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 12: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3643 bytes to 15 608s # GLib-DEBUG: io-channel-basic: ...from 14: IN 608s # GLib-DEBUG: io-channel-basic: ...from 14: 3643 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 14: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+2315 bytes to 11 608s # GLib-DEBUG: io-channel-basic: ...from 10: IN 608s # GLib-DEBUG: io-channel-basic: ...from 10: 2315 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 10: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+1601 bytes to 17 608s # GLib-DEBUG: io-channel-basic: ...from 16: IN 608s # GLib-DEBUG: io-channel-basic: ...from 16: 1601 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 16: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3109 bytes to 9 608s # GLib-DEBUG: io-channel-basic: ...from 8: IN 608s # GLib-DEBUG: io-channel-basic: ...from 8: 3109 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 8: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+1104 bytes to 15 608s # GLib-DEBUG: io-channel-basic: ...from 14: IN 608s # GLib-DEBUG: io-channel-basic: ...from 14: 1104 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 14: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+300 bytes to 13 608s # GLib-DEBUG: io-channel-basic: ...from 12: IN 608s # GLib-DEBUG: io-channel-basic: ...from 12: 300 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 12: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+1534 bytes to 11 608s # GLib-DEBUG: io-channel-basic: ...from 10: IN 608s # GLib-DEBUG: io-channel-basic: ...from 10: 1534 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 10: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3982 bytes to 17 608s # GLib-DEBUG: io-channel-basic: ...from 16: IN 608s # GLib-DEBUG: io-channel-basic: ...from 16: 3982 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 16: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+3601 bytes to 9 608s # GLib-DEBUG: io-channel-basic: ...from 8: IN 608s # GLib-DEBUG: io-channel-basic: ...from 8: 3601 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 8: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+802 bytes to 15 608s # GLib-DEBUG: io-channel-basic: ...from 14: IN 608s # GLib-DEBUG: io-channel-basic: ...from 14: 802 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 14: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+948 bytes to 13 608s # GLib-DEBUG: io-channel-basic: ...from 12: IN 608s # GLib-DEBUG: io-channel-basic: ...from 12: 948 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 12: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+657 bytes to 11 608s # GLib-DEBUG: io-channel-basic: ...from 10: IN 608s # GLib-DEBUG: io-channel-basic: ...from 10: 657 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 10: OK 608s # GLib-DEBUG: io-channel-basic: child writing 8+4611 bytes to 17 608s # GLib-DEBUG: io-channel-basic: ...from 16: IN 608s # GLib-DEBUG: io-channel-basic: ...from 16: 4611 bytes 608s # GLib-DEBUG: io-channel-basic: ...from 16: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4935 bytes to 9 609s # GLib-DEBUG: io-channel-basic: ...from 8: IN 609s # GLib-DEBUG: io-channel-basic: ...from 8: 4935 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 8: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4408 bytes to 15 609s # GLib-DEBUG: io-channel-basic: ...from 14: IN 609s # GLib-DEBUG: io-channel-basic: ...from 14: 4408 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 14: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4930 bytes to 13 609s # GLib-DEBUG: io-channel-basic: ...from 12: IN 609s # GLib-DEBUG: io-channel-basic: ...from 12: 4930 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 12: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4140 bytes to 11 609s # GLib-DEBUG: io-channel-basic: ...from 10: IN 609s # GLib-DEBUG: io-channel-basic: ...from 10: 4140 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 10: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+2829 bytes to 17 609s # GLib-DEBUG: io-channel-basic: ...from 16: IN 609s # GLib-DEBUG: io-channel-basic: ...from 16: 2829 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 16: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+1650 bytes to 15 609s # GLib-DEBUG: io-channel-basic: ...from 14: IN 609s # GLib-DEBUG: io-channel-basic: ...from 14: 1650 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 14: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4354 bytes to 9 609s # GLib-DEBUG: io-channel-basic: ...from 8: IN 609s # GLib-DEBUG: io-channel-basic: ...from 8: 4354 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 8: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+885 bytes to 13 609s # GLib-DEBUG: io-channel-basic: ...from 12: IN 609s # GLib-DEBUG: io-channel-basic: ...from 12: 885 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 12: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4427 bytes to 11 609s # GLib-DEBUG: io-channel-basic: ...from 10: IN 609s # GLib-DEBUG: io-channel-basic: ...from 10: 4427 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 10: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4594 bytes to 17 609s # GLib-DEBUG: io-channel-basic: ...from 16: IN 609s # GLib-DEBUG: io-channel-basic: ...from 16: 4594 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 16: OK 609s # Executing: glib/io-channel-basic.test 609s # GLib-DEBUG: io-channel-basic: child writing 8+4208 bytes to 15 609s # GLib-DEBUG: io-channel-basic: ...from 14: IN 609s # GLib-DEBUG: io-channel-basic: ...from 14: 4208 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 14: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+3211 bytes to 9 609s # GLib-DEBUG: io-channel-basic: ...from 8: IN 609s # GLib-DEBUG: io-channel-basic: ...from 8: 3211 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 8: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+3465 bytes to 13 609s # GLib-DEBUG: io-channel-basic: ...from 12: IN 609s # GLib-DEBUG: io-channel-basic: ...from 12: 3465 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 12: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+2784 bytes to 11 609s # GLib-DEBUG: io-channel-basic: ...from 10: IN 609s # GLib-DEBUG: io-channel-basic: ...from 10: 2784 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 10: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+281 bytes to 17 609s # GLib-DEBUG: io-channel-basic: ...from 16: IN 609s # GLib-DEBUG: io-channel-basic: ...from 16: 281 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 16: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+1720 bytes to 15 609s # GLib-DEBUG: io-channel-basic: ...from 14: IN 609s # GLib-DEBUG: io-channel-basic: ...from 14: 1720 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 14: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+2777 bytes to 9 609s # GLib-DEBUG: io-channel-basic: ...from 8: IN 609s # GLib-DEBUG: io-channel-basic: ...from 8: 2777 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 8: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+4759 bytes to 13 609s # GLib-DEBUG: io-channel-basic: ...from 12: IN 609s # GLib-DEBUG: io-channel-basic: ...from 12: 4759 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 12: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+368 bytes to 11 609s # GLib-DEBUG: io-channel-basic: ...from 10: IN 609s # GLib-DEBUG: io-channel-basic: ...from 10: 368 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 10: OK 609s # GLib-DEBUG: io-channel-basic: child writing 8+2432 bytes to 17 609s # GLib-DEBUG: io-channel-basic: ...from 16: IN 609s # GLib-DEBUG: io-channel-basic: ...from 16: 2432 bytes 609s # GLib-DEBUG: io-channel-basic: ...from 16: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+2817 bytes to 9 610s # GLib-DEBUG: io-channel-basic: child exiting, closing 9 610s # GLib-DEBUG: io-channel-basic: ...from 8: HUP IN 610s # GLib-DEBUG: io-channel-basic: ...from 8: 2817 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 8: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+3517 bytes to 15 610s # GLib-DEBUG: io-channel-basic: child exiting, closing 15 610s # GLib-DEBUG: io-channel-basic: ...from 14: HUP IN 610s # GLib-DEBUG: io-channel-basic: ...from 14: 3517 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 14: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+4076 bytes to 13 610s # GLib-DEBUG: io-channel-basic: ...from 12: IN 610s # GLib-DEBUG: io-channel-basic: ...from 12: 4076 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 12: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+3981 bytes to 11 610s # GLib-DEBUG: io-channel-basic: ...from 10: IN 610s # GLib-DEBUG: io-channel-basic: ...from 10: 3981 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 10: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+2828 bytes to 17 610s # GLib-DEBUG: io-channel-basic: ...from 16: IN 610s # GLib-DEBUG: io-channel-basic: ...from 16: 2828 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 16: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+798 bytes to 13 610s # GLib-DEBUG: io-channel-basic: ...from 12: IN 610s # GLib-DEBUG: io-channel-basic: ...from 12: 798 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 12: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+3731 bytes to 11 610s # GLib-DEBUG: io-channel-basic: ...from 10: IN 610s # GLib-DEBUG: io-channel-basic: ...from 10: 3731 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 10: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+4124 bytes to 17 610s # GLib-DEBUG: io-channel-basic: ...from 16: IN 610s # GLib-DEBUG: io-channel-basic: ...from 16: 4124 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 16: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+836 bytes to 13 610s # GLib-DEBUG: io-channel-basic: ...from 12: IN 610s # GLib-DEBUG: io-channel-basic: ...from 12: 836 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 12: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+1485 bytes to 17 610s # GLib-DEBUG: io-channel-basic: child exiting, closing 17 610s # GLib-DEBUG: io-channel-basic: ...from 16: HUP IN 610s # GLib-DEBUG: io-channel-basic: ...from 16: 1485 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 16: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+4976 bytes to 11 610s # GLib-DEBUG: io-channel-basic: child exiting, closing 11 610s # GLib-DEBUG: io-channel-basic: ...from 10: HUP IN 610s # GLib-DEBUG: io-channel-basic: ...from 10: 4976 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 10: OK 610s # GLib-DEBUG: io-channel-basic: child writing 8+3652 bytes to 13 610s # GLib-DEBUG: io-channel-basic: ...from 12: IN 610s # GLib-DEBUG: io-channel-basic: ...from 12: 3652 bytes 610s # GLib-DEBUG: io-channel-basic: ...from 12: OK 611s # GLib-DEBUG: io-channel-basic: child writing 8+3371 bytes to 13 611s # GLib-DEBUG: io-channel-basic: child exiting, closing 13 611s # GLib-DEBUG: io-channel-basic: ...from 12: HUP IN 611s # GLib-DEBUG: io-channel-basic: ...from 12: 3371 bytes 611s # GLib-DEBUG: io-channel-basic: ...from 12: OK 611s ok 1 /gio/io-basics 611s # slow test /gio/io-basics executed in 13.06 secs 611s # End of gio tests 611s ok - glib/io-channel-basic.test 611s TAP version 14 611s # random seed: R02S3cc6e95fca7914498acc17210e2d6169 611s 1..8 611s # Start of rcbox tests 611s ok 1 /rcbox/new 611s # global_point = 0x106ddcf58720 611s ok 2 /rcbox/release-full 611s # global_point_a = 0x106ddcf58720 611s # global_point_b = 0x106ddcf587f0 611s ok 3 /rcbox/dup 611s ok 4 /rcbox/alignment 611s # End of rcbox tests 611s # Start of atomic-rcbox tests 611s ok 5 /atomic-rcbox/new 611s # global_point = 0x106ddcf587f0 611s ok 6 /atomic-rcbox/release-full 611s # global_point_a = 0x106ddcf587f0 611s # global_point_b = 0x106ddcf58720 611s ok 7 /atomic-rcbox/dup 611s ok 8 /atomic-rcbox/alignment 611s # End of atomic-rcbox tests 611s # Running test: glib/rcbox.test 611s ok - glib/rcbox.test 611s # Running test: glib/network-monitor.test 611s TAP version 14 611s # random seed: R02S8a1ca02c36f076bbb05ea2a35c6926ae 611s 1..4 611s # Start of network-monitor tests 611s # GLib-GIO-DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals 611s # GLib-GIO-DEBUG: Failed to initialize networkmanager (GNetworkMonitorNM) for gio-network-monitor: NetworkManager not running 611s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation netlink (GNetworkMonitorNetlink) for ‘gio-network-monitor’ 611s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 611s ok 1 /network-monitor/default 611s ok 2 /network-monitor/remove_default 611s ok 3 /network-monitor/add_networks 611s ok 4 /network-monitor/remove_networks 611s # End of network-monitor tests 611s TAP version 14 611s # random seed: R02S9dfe45cb1b86094155185ae5ac19bb82 611s 1..1 611s # Start of file-enumerator tests 611s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 611s ok 1 /file-enumerator/close-on-dispose 611s # End of file-enumerator tests 611s ok - glib/network-monitor.test 611s # Running test: glib/file-enumerator.test 611s ok - glib/file-enumerator.test 611s # Running test: glib/cxx-17.test 611s TAP version 14 611s # random seed: R02S4b0fc346af33e3bae1ead658014cb4b7 611s 1..2 611s # Start of gtask tests 611s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 611s ok 1 /gtask/name 611s # Start of name tests 611s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 611s ok 2 /gtask/name/macro-wrapper 611s # End of name tests 611s # End of gtask tests 611s ok - glib/cxx-17.test 611s # Running test: glib/utf8-misc.test 611s TAP version 14 611s # random seed: R02S175fc42bffec635ed4cb791edcdf9c07 611s 1..7 611s # Start of utf8 tests 611s ok 1 /utf8/strlen 611s ok 2 /utf8/strncpy 611s ok 3 /utf8/strrchr 611s ok 4 /utf8/reverse 611s ok 5 /utf8/substring 611s ok 6 /utf8/make-valid 611s ok 7 /utf8/truncate-middle 611s # End of utf8 tests 611s ok - glib/utf8-misc.test 611s # Running test: glib/portal-support-snap-classic.test 611s TAP version 14 611s # random seed: R02S7995a8e56acd34c3850d775fab39376d 611s 1..3 611s # Start of portal-support tests 611s # Start of snap-classic tests 611s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/home 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/cache 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/system-config1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/system-config2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/config 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/system-data1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/system-data2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/data 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/state 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl/.dirs/runtime 611s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/no-snapctl: No such file or directory 611s ok 1 /portal-support/snap-classic/no-snapctl 611s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/home 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/cache 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/system-config1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/system-config2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/config 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/system-data1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/system-data2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/data 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/state 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/runtime 611s # Created snap.yaml in /tmp/test_portal-support-snap-classic_B3LBK3/meta/snap.yaml 611s # Created snapctl in /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none/.dirs/runtime/snapctl 611s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/none: No such file or directory 611s ok 2 /portal-support/snap-classic/none 611s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/home 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/cache 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/system-config1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/system-config2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/config 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/system-data1:/tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/system-data2 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/data 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/state 611s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/runtime 611s # Created snap.yaml in /tmp/test_portal-support-snap-classic_B3LBK3/meta/snap.yaml 611s # Created snapctl in /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all/.dirs/runtime/snapctl 611s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_B3LBK3/portal-support/snap-classic/all: No such file or directory 611s ok 3 /portal-support/snap-classic/all 611s # End of snap-classic tests 611s # End of portal-support tests 611s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_B3LBK3: No such file or directory 611s TAP version 14 611s # random seed: R02S0c4da9ae3905e98d68cc4728af060a76 611s 1..1 611s # Start of option tests 611s ok 1 /option/argv0 611s # End of option tests 611s TAP version 14 611s # random seed: R02S85cccf76bf64f00f864b51ea0f4caa74 611s 1..2 611s # Start of atomic tests 611s ok 1 /atomic/types 611s ok - glib/portal-support-snap-classic.test 611s # Running test: glib/option-argv0.test 611s ok - glib/option-argv0.test 611s # Running test: glib/atomic.test 611s ok 2 /atomic/threaded 611s # End of atomic tests 611s ok - glib/atomic.test 611s # Running test: glib/socket.test 611s TAP version 14 611s # random seed: R02S8d6a21aa782bf1ee96100390df006b00 611s 1..30 611s # Start of socket tests 612s ok 1 /socket/ipv4_sync 612s # slow test /socket/ipv4_sync executed in 1.00 secs 613s ok 2 /socket/ipv4_async 613s # slow test /socket/ipv4_async executed in 1.00 secs 613s ok 3 /socket/ipv6_sync 613s ok 4 /socket/ipv6_async 613s ok 5 /socket/ipv6_v4mapped 614s ok 6 /socket/close_graceful 614s # slow test /socket/close_graceful executed in 1.00 secs 614s ok 7 /socket/timed_wait # SKIP Not running timing heavy test 614s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=741707 614s ok 8 /socket/fd_reuse 614s ok 9 /socket/address 614s ok 10 /socket/unix-from-fd 614s ok 11 /socket/unix-connection 614s ok 12 /socket/unix-connection-ancillary-data 614s ok 13 /socket/source-postmortem 614s ok 14 /socket/read_write 614s ok 15 /socket/read_writev 614s # /socket/receive_bytes summary: Test basic functionality of g_socket_receive_bytes() 614s ok 16 /socket/receive_bytes 614s # /socket/receive_bytes_from summary: Test basic functionality of g_socket_receive_bytes_from() 614s ok 17 /socket/receive_bytes_from 614s # Start of ipv4_sync tests 614s ok 18 /socket/ipv4_sync/datagram 614s # Start of datagram tests 614s # Executing: glib/socket.test 615s ok 19 /socket/ipv4_sync/datagram/timeouts 615s # slow test /socket/ipv4_sync/datagram/timeouts executed in 1.10 secs 615s # End of datagram tests 615s # End of ipv4_sync tests 615s # Start of ipv6_sync tests 615s ok 20 /socket/ipv6_sync/datagram 615s # Start of datagram tests 616s ok 21 /socket/ipv6_sync/datagram/timeouts 616s # slow test /socket/ipv6_sync/datagram/timeouts executed in 1.10 secs 616s # End of datagram tests 616s # End of ipv6_sync tests 616s # Start of reuse tests 616s ok 22 /socket/reuse/tcp 616s ok 23 /socket/reuse/udp 616s # End of reuse tests 616s # Start of get_available tests 616s ok 24 /socket/get_available/datagram 616s ok 25 /socket/get_available/stream 616s # End of get_available tests 616s # Start of credentials tests 616s # Supported on this OS: GCredentials:linux-ucred:pid=0 616s ok 26 /socket/credentials/tcp_client 616s # Supported on this OS: GCredentials:linux-ucred:pid=0 616s ok - glib/socket.test 616s ok 27 /socket/credentials/tcp_server 616s # Supported on this OS: GCredentials:linux-ucred:pid=29502,uid=1000,gid=1000 616s ok 28 /socket/credentials/unix_socketpair 616s # End of credentials tests 616s # Start of accept tests 616s # /socket/accept/cancelled summary: Calling g_socket_accept() with a cancelled cancellable should return immediately regardless of whether the socket is blocking 616s ok 29 /socket/accept/cancelled 616s # End of accept tests 616s # Start of connect tests 616s # /socket/connect/cancelled summary: Calling g_socket_connect() with a cancelled cancellable should return immediately regardless of whether the socket is blocking 616s ok 30 /socket/connect/cancelled 616s # End of connect tests 616s # End of socket tests 616s # Running test: glib/g-file.test 616s TAP version 14 616s ok - glib/g-file.test 616s # Running test: glib/unix-fd.test 616s ok - glib/unix-fd.test 616s # Running test: glib/properties.test 616s ok - glib/properties.test 616s # Running test: glib/queue.test 616s # random seed: R02S5118e9ad83597df55d83399f8068dc3e 616s 1..8 616s # Start of g-file tests 616s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 616s ok 1 /g-file/test_g_file_new_null 616s ok 2 /g-file/test_g_file_new_for_path 616s ok 3 /g-file/test_g_file_new_for_uri 616s ok 4 /g-file/test_g_file_dup 616s ok 5 /g-file/test_g_file_get_parse_name_utf8 616s file:///tmp/test-tmp-glib_g-file.test-ONLLK3 616s file:///tmp 616s file:///tmp 616s file:////UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 616s file:///UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 616s ok 6 /g-file/test_g_file_new_for_commandline_arg 616s /dir1 /dir1/dir2/dir3/ 616s /dir1/ /dir1/dir2/dir3/ 616s /dir1 /dir1/dir2/dir3 616s /dir1/ /dir1/dir2/dir3 616s /tmp/ /something/ 616s /dir1/dir2 /dir1/ 616s //dir1/new //dir1/new/dir2/dir3 616s /dir/UTF-8 příliš žluťoučký kůň /dir/UTF-8 příliš žluťoučký kůň/dir2 616s file:///dir1 file:///dir1/dir2/dir3/ 616s file:///dir1/ file:///dir1/dir2/dir3/ 616s file:///dir1 file:///dir1/dir2/dir3 616s file:///dir1/ file:///dir1/dir2/dir3 616s file:///tmp/ file:///something/ 616s file:///dir1/dir2 file:///dir1/ 616s file:////dir1/new file:////dir1/new/dir2/dir3 616s file:///dir/UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 file:///dir/UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88/dir2 616s ok 7 /g-file/test_g_file_has_prefix 616s ok 8 /g-file/test_g_file_get_parent_child 616s # End of g-file tests 616s TAP version 14 616s # random seed: R02Sfa8dd62ccd98addb5e20af9e2c61c1d7 616s 1..2 616s # Start of unix-fd tests 616s ok 1 /unix-fd/fd-list 616s ok 2 /unix-fd/scm 616s # End of unix-fd tests 616s TAP version 14 616s # random seed: R02S58fdb3b7312f59c0f9388e3fc55259c9 616s 1..14 616s # Start of properties tests 616s ok 1 /properties/install 616s ok 2 /properties/install-many 616s ok 3 /properties/notify 616s ok 4 /properties/notify-queue 616s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=630357 616s ok 5 /properties/construct 616s # /properties/get-property summary: g_object_get_property() accepts uninitialized, initialized, and transformable values 616s # Test g_object_get_property with an initialized value 616s # Test g_object_get_property with an uninitialized value 616s # Test g_object_get_property with a transformable value 616s ok 6 /properties/get-property 616s ok 7 /properties/testv_with_no_properties 616s ok 8 /properties/testv_with_valid_properties 616s ok 9 /properties/testv_with_invalid_property_type 616s ok 10 /properties/testv_with_invalid_property_names 616s ok 11 /properties/testv_getv 616s ok 12 /properties/testv_notify_queue 616s # Start of notify tests 616s ok 13 /properties/notify/too-many-freezes 616s # End of notify tests 616s # Start of set-property tests 616s # Start of variant tests 616s # /properties/set-property/variant/floating summary: Test that setting a property to a floating variant consumes the reference 616s ok 14 /properties/set-property/variant/floating 616s # End of variant tests 616s # End of set-property tests 616s # End of properties tests 616s TAP version 14 616s # random seed: R02S2eb8556eb3978893f8b86ef83dbb8cd6 616s 1..12 616s # Start of queue tests 616s ok 1 /queue/basic 616s ok 2 /queue/copy 616s ok 3 /queue/off-by-one 616s ok 4 /queue/find-custom 616s ok 5 /queue/static 616s ok 6 /queue/clear 616s ok 7 /queue/free-full 616s ok 8 /queue/clear-full 616s ok 9 /queue/insert-sibling-link 616s ok 10 /queue/push-nth-link 616s # Start of clear-full tests 616s ok 11 /queue/clear-full/noop 616s # End of clear-full tests 616s # Start of random tests 616s ok 12 /queue/random/seed:1564021826 616s # End of random tests 616s # End of queue tests 616s ok - glib/queue.test 616s # Running test: glib/rand.test 616s TAP version 14 616s # random seed: R02S2461816c276ea398fe209df6f0de1e75 616s 1..2 616s # Start of rand tests 616s ok 1 /rand/test-rand 616s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=502560 616s ok 2 /rand/double-range 616s # End of rand tests 616s ok - glib/rand.test 616s # Running test: glib/signals.test 616s TAP version 14 616s # random seed: R02Scc2ed5dbf3c08e9f4809e2091a2dfbc6 616s 1..31 616s # Start of gobject tests 616s # Start of signals tests 616s ok 1 /gobject/signals/all-types 616s ok 2 /gobject/signals/variant 616s ok 3 /gobject/signals/destroy-target-object 616s ok 4 /gobject/signals/generic-marshaller-1 616s ok 5 /gobject/signals/generic-marshaller-2 616s ok 6 /gobject/signals/generic-marshaller-enum-return-signed 616s ok 7 /gobject/signals/generic-marshaller-enum-return-unsigned 616s ok 8 /gobject/signals/generic-marshaller-int-return 616s ok 9 /gobject/signals/generic-marshaller-uint-return 616s ok 10 /gobject/signals/generic-marshaller-interface-return 616s ok 11 /gobject/signals/custom-marshaller 616s ok 12 /gobject/signals/connect 616s ok 13 /gobject/signals/emission-hook 616s ok 14 /gobject/signals/emitv 616s ok 15 /gobject/signals/accumulator 616s # Signal: accumulator-class-first 616s # Signal: accumulator-class-last 616s # Signal: accumulator-class-cleanup 616s # Signal: accumulator-class-first-last 616s # Signal: accumulator-class-first-last-cleanup 616s # Signal: accumulator-class-last-cleanup 616s ok 16 /gobject/signals/accumulator-class 616s ok 17 /gobject/signals/introspection 616s ok 18 /gobject/signals/block-handler 616s ok - glib/signals.test 616s # Running test: glib/gapplication.test 616s ok 19 /gobject/signals/stop-emission 616s ok 20 /gobject/signals/invocation-hint 616s ok 21 /gobject/signals/test-disconnection-wrong-object 616s ok 22 /gobject/signals/clear-signal-handler 616s # /gobject/signals/lookup summary: Test that g_signal_lookup() works with a variety of inputs. 616s ok 23 /gobject/signals/lookup 616s # /gobject/signals/parse-name summary: Test that g_signal_parse_name() works with a variety of inputs. 616s ok 24 /gobject/signals/parse-name 616s ok 25 /gobject/signals/is-valid-name 616s ok 26 /gobject/signals/weak-ref-disconnect 616s # Start of lookup tests 616s # /gobject/signals/lookup/invalid summary: Test that g_signal_lookup() emits a warning if looking up an invalid signal name. 616s ok 27 /gobject/signals/lookup/invalid 616s # End of lookup tests 616s # Start of parse-name tests 616s # /gobject/signals/parse-name/invalid summary: Test that g_signal_parse_name() ignores a variety of invalid inputs. 616s # Parser input: 616s # Parser input: 7zip 616s # Parser input: invalid:signal 616s # Parser input: simple-detailed:: 616s # Parser input: simple-detailed: 616s # Parser input: : 616s # Parser input: :: 616s # Parser input: :valid-detail 616s # Parser input: ::valid-detail 616s ok 28 /gobject/signals/parse-name/invalid 616s # End of parse-name tests 616s # Start of invalid-name tests 616s # /gobject/signals/invalid-name/colon summary: Check that g_signal_new() rejects invalid signal names. 616s ok 29 /gobject/signals/invalid-name/colon 616s # /gobject/signals/invalid-name/first-char summary: Check that g_signal_new() rejects invalid signal names. 616s ok 30 /gobject/signals/invalid-name/first-char 616s # /gobject/signals/invalid-name/empty summary: Check that g_signal_new() rejects invalid signal names. 616s ok 31 /gobject/signals/invalid-name/empty 616s # End of invalid-name tests 616s # End of signals tests 616s # End of gobject tests 616s TAP version 14 616s # random seed: R02S7ab720b5969ecaaeb5ccd541ca0f0854 616s 1..25 616s # Start of gapplication tests 616s ok 1 /gapplication/no-dbus 616s ok 2 /gapplication/no-appid 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s ok 3 /gapplication/properties 616s ok 4 /gapplication/app-id 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s ok 5 /gapplication/quit 616s ok 6 /gapplication/registered 616s ok 7 /gapplication/local-actions 616s ok 8 /gapplication/local-command-line 616s ok 9 /gapplication/resource-path 616s ok 10 /gapplication/test-help 616s ok 11 /gapplication/command-line-done 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s ok 12 /gapplication/test-busy 616s ok 13 /gapplication/test-handle-local-options1 616s ok 14 /gapplication/test-handle-local-options2 616s ok 15 /gapplication/test-handle-local-options3 616s ok 16 /gapplication/api 616s ok 17 /gapplication/version 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 616s # launching subprocess 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s ok 18 /gapplication/replace 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 616s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 616s # launching subprocess 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 19 /gapplication/no-replace 617s # slow test /gapplication/no-replace executed in 0.51 secs 617s # Start of command-line tests 617s # /gapplication/command-line/arguments summary: Test HANDLES_COMMAND_LINE locally with a ->local_command_line vfunc which forces g_application_run() to take a fallback error handling path 617s ok 20 /gapplication/command-line/arguments 617s # End of command-line tests 617s # Start of dbus tests 617s # /gapplication/dbus/activate summary: Test that calling the Activate D-Bus method works 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 617s # Message 0 617s # Message 1 617s # Message 2 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 21 /gapplication/dbus/activate 617s # /gapplication/dbus/open summary: Test that calling the Open D-Bus method works 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 617s # Message 0 617s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 617s # Message 1 617s # Message 2 617s # Message 3 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 22 /gapplication/dbus/open 617s # /gapplication/dbus/command-line summary: Test that calling the CommandLine D-Bus method works 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 617s # Message 0 617s # Message 1 617s # Message 2 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 23 /gapplication/dbus/command-line 617s # /gapplication/dbus/command-line-done summary: Test that GDBusCommandLine.done() works 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 24 /gapplication/dbus/command-line-done 617s # /gapplication/dbus/activate-action summary: Test that calling the ActivateAction D-Bus method works 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 617s # Message 0 617s # Message 1 617s # Message 2 617s # Message 3 617s # Message 4 617s # Message 5 617s # Message 6 617s # Message 7 617s # Message 8 617s # Message 9 617s # Message 10 617s # Message 11 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 617s ok 25 /gapplication/dbus/activate-action 617s # End of dbus tests 617s # End of gapplication tests 617s ok - glib/gapplication.test 617s # Running test: glib/file.test 617s TAP version 14 617s # random seed: R02Sc7ca94f98804ee1237d826543f2fd063 617s 1..55 617s # Start of file tests 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/basic/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/basic/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/basic/.dirs/system-config1:/tmp/test_file_VYFOK3/file/basic/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/basic/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/basic/.dirs/system-data1:/tmp/test_file_VYFOK3/file/basic/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/basic/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/basic/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/basic/.dirs/runtime 617s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 617s ok 1 /file/basic 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/build-filename/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/build-filename/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/build-filename/.dirs/system-config1:/tmp/test_file_VYFOK3/file/build-filename/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/build-filename/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/build-filename/.dirs/system-data1:/tmp/test_file_VYFOK3/file/build-filename/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/build-filename/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/build-filename/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/build-filename/.dirs/runtime 617s ok 2 /file/build-filename 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/system-config1:/tmp/test_file_VYFOK3/file/build-filenamev/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/system-data1:/tmp/test_file_VYFOK3/file/build-filenamev/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/build-filenamev/.dirs/runtime 617s ok 3 /file/build-filenamev 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/parent/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/parent/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/parent/.dirs/system-config1:/tmp/test_file_VYFOK3/file/parent/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/parent/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/parent/.dirs/system-data1:/tmp/test_file_VYFOK3/file/parent/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/parent/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/parent/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/parent/.dirs/runtime 617s ok 4 /file/parent 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/child/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/child/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/child/.dirs/system-config1:/tmp/test_file_VYFOK3/file/child/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/child/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/child/.dirs/system-data1:/tmp/test_file_VYFOK3/file/child/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/child/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/child/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/child/.dirs/runtime 617s ok 5 /file/child 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/empty-path/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/empty-path/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/empty-path/.dirs/system-config1:/tmp/test_file_VYFOK3/file/empty-path/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/empty-path/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/empty-path/.dirs/system-data1:/tmp/test_file_VYFOK3/file/empty-path/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/empty-path/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/empty-path/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/empty-path/.dirs/runtime 617s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2328 617s # /file/empty-path summary: Check that creating a file with an empty path results in errors 617s ok 6 /file/empty-path 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/type/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/type/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/type/.dirs/system-config1:/tmp/test_file_VYFOK3/file/type/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/type/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/type/.dirs/system-data1:/tmp/test_file_VYFOK3/file/type/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/type/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/type/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/type/.dirs/runtime 617s ok 7 /file/type 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/parse-name/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/parse-name/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/parse-name/.dirs/system-config1:/tmp/test_file_VYFOK3/file/parse-name/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/parse-name/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/parse-name/.dirs/system-data1:/tmp/test_file_VYFOK3/file/parse-name/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/parse-name/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/parse-name/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/parse-name/.dirs/runtime 617s ok 8 /file/parse-name 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace-load/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace-load/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace-load/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace-load/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace-load/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace-load/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace-load/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace-load/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace-load/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace-load/.dirs/runtime 617s ok 9 /file/replace-load 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace-cancel/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace-cancel/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace-cancel/.dirs/runtime 617s # Bug Reference: https://bugzilla.gnome.org/629301 617s ok 10 /file/replace-cancel 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace-symlink/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace-symlink/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace-symlink/.dirs/runtime 617s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2325 617s # /file/replace-symlink summary: Test that G_FILE_CREATE_REPLACE_DESTINATION doesn’t follow symlinks 617s # Using temporary directory /tmp/test_file_VYFOK3/g_file_replace_symlink_GURPK3 617s ok 11 /file/replace-symlink 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-new-tmp/.dirs/runtime 617s ok 12 /file/async-new-tmp 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-new-tmp-dir/.dirs/runtime 617s ok 13 /file/async-new-tmp-dir 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-delete/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-delete/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-delete/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-delete/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-delete/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-delete/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-delete/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-delete/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-delete/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-delete/.dirs/runtime 617s ok 14 /file/async-delete 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-make-symlink/.dirs/runtime 617s ok 15 /file/async-make-symlink 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/system-config1:/tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/system-data1:/tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/copy-preserve-mode/.dirs/runtime 617s # Current umask: 2 617s # Vector 0 617s # Vector 1 617s # Vector 2 617s # Vector 3 617s # Vector 4 617s # Vector 5 617s # Vector 6 617s # Vector 7 617s # Vector 8 617s # Vector 9 617s # Vector 10 617s ok 16 /file/copy-preserve-mode 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/system-config1:/tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/system-data1:/tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/copy-async-with-closures/.dirs/runtime 617s ok 17 /file/copy-async-with-closures 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/measure/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/measure/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/measure/.dirs/system-config1:/tmp/test_file_VYFOK3/file/measure/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/measure/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/measure/.dirs/system-data1:/tmp/test_file_VYFOK3/file/measure/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/measure/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/measure/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/measure/.dirs/runtime 617s ok 18 /file/measure 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/measure-async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/measure-async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/measure-async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/measure-async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/measure-async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/measure-async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/measure-async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/measure-async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/measure-async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/measure-async/.dirs/runtime 617s ok 19 /file/measure-async 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/system-config1:/tmp/test_file_VYFOK3/file/load-bytes/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/system-data1:/tmp/test_file_VYFOK3/file/load-bytes/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/load-bytes/.dirs/runtime 617s ok 20 /file/load-bytes 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/load-bytes-async/.dirs/runtime 617s ok 21 /file/load-bytes-async 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/system-config1:/tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/system-data1:/tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/load-bytes-4gb/.dirs/runtime 617s ok 22 /file/load-bytes-4gb # SKIP Skipping slow >4GB file test 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/system-config1:/tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/system-data1:/tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/load-contents-4gb/.dirs/runtime 617s ok 23 /file/load-contents-4gb # SKIP Skipping slow >4GB file test 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/load-contents-4gb-async/.dirs/runtime 617s ok 24 /file/load-contents-4gb-async # SKIP Skipping slow >4GB file test 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/.dirs/runtime 617s ok 25 /file/writev 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/system-config1:/tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/system-data1:/tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/build-attribute-list-for-copy/.dirs/runtime 617s # Attributes for copy: standard::size,time::modified,time::modified-nsec,time::modified-usec,unix::mode,xattr::* 617s # Attributes for copy: standard::size,time::modified,time::modified-nsec,time::modified-usec,xattr::* 617s # Attributes for copy: standard::size,time::access,time::access-nsec,time::access-usec,time::modified,time::modified-nsec,time::modified-usec,unix::gid,unix::mode,unix::uid,xattr::*,xattr-sys::* 617s # Attributes for copy: standard::size,time::access,time::access-nsec,time::access-usec,time::modified,time::modified-nsec,time::modified-usec,unix::gid,unix::uid,xattr::*,xattr-sys::* 617s # Attributes for copy: standard::size,time::access,time::access-nsec,time::access-usec,unix::gid,unix::mode,unix::uid,xattr::*,xattr-sys::* 617s # Attributes for copy: standard::size,xattr::* 617s # Attributes for copy: standard::size,unix::mode,xattr::* 617s ok 26 /file/build-attribute-list-for-copy 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/move_async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/move_async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/move_async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/move_async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/move_async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/move_async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/move_async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/move_async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/move_async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/move_async/.dirs/runtime 617s ok 27 /file/move_async 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/system-config1:/tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/system-data1:/tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/move-async-with-closures/.dirs/runtime 617s ok 28 /file/move-async-with-closures 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/system-config1:/tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/system-data1:/tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/query-zero-length-content-type/.dirs/runtime 617s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=755795 617s # /file/query-zero-length-content-type summary: empty files should always be considered application/x-zerosize 617s ok 29 /file/query-zero-length-content-type 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/system-config1:/tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/system-data1:/tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/runtime 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/data/applications 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/config 617s ok 30 /file/query-default-handler-file 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/runtime 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/data/applications 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config 617s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_VYFOK3/file/query-default-handler-file/.dirs/config to /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config 617s ok 31 /file/query-default-handler-file-async 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/system-config1:/tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/system-data1:/tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/runtime 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/data/applications 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config 617s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_VYFOK3/file/query-default-handler-file-async/.dirs/config to /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config 617s ok 32 /file/query-default-handler-uri 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/runtime 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/data/applications 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/config 617s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_VYFOK3/file/query-default-handler-uri/.dirs/config to /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/config 617s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_VYFOK3/file/query-default-handler-uri-async/.dirs/config 617s ok 33 /file/query-default-handler-uri-async 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/system-config1:/tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/system-data1:/tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/enumerator-cancellation/.dirs/runtime 617s ok 34 /file/enumerator-cancellation 617s # Start of async-create-delete tests 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-create-delete/0/.dirs/runtime 617s ok 35 /file/async-create-delete/0 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-create-delete/1/.dirs/runtime 617s ok 36 /file/async-create-delete/1 617s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/home 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/cache 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/system-config2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/config 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/system-data2 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/data 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/state 617s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-create-delete/10/.dirs/runtime 618s ok 37 /file/async-create-delete/10 618s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/home 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/cache 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/system-config2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/config 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/system-data2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/data 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/state 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-create-delete/25/.dirs/runtime 618s ok 38 /file/async-create-delete/25 618s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/home 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/cache 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/system-config1:/tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/system-config2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/config 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/system-data1:/tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/system-data2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/data 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/state 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/async-create-delete/4096/.dirs/runtime 618s ok 39 /file/async-create-delete/4096 618s # End of async-create-delete tests 618s # Start of replace-symlink tests 618s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/home 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/cache 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/system-config2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/config 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/system-data2 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/data 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/state 618s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace-symlink/using-etag/.dirs/runtime 618s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2417 618s # /file/replace-symlink/using-etag summary: Test that ETag checks work when replacing a file through a symlink 618s # Using temporary directory /tmp/test_file_VYFOK3/g_file_replace_symlink_using_etag_9DWAK3 619s # Executing: glib/file.test 620s ok 40 /file/replace-symlink/using-etag 620s # slow test /file/replace-symlink/using-etag executed in 2.01 secs 620s # End of replace-symlink tests 620s # Start of replace tests 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace/write-only/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace/write-only/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace/write-only/.dirs/runtime 620s # /file/replace/write-only summary: Test various situations for g_file_replace() 620s # Current umask: 2 620s # Test 0, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_DFPAK3 620s # Test 1, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_RHOAK3 620s # Test 2, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_TZJAK3 620s # Test 3, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_8HHAK3 620s # Test 4, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_SWMAK3 620s # Test 5, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_IQMAK3 620s # Test 6, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_8SRBK3 620s # Test 7, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_MCVBK3 620s # Test 8, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_42TBK3 620s # Test 9, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_E9TBK3 620s # Test 10, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_EVJBK3 620s # Test 11, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_GPMBK3 620s # Test 12, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_V2EBK3 620s # Test 13, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_MOFBK3 620s # Test 14, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_KPCBK3 620s # Test 15, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_6Q6AK3 620s # Test 16, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_449AK3 620s # Test 17, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_L0KHK3 620s # Test 18, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_9JSIK3 620s # Test 19, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_TPXJK3 620s # Test 20, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_SLMJK3 620s # Test 21, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_AXAFK3 620s # Test 22, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_T7AFK3 620s # Test 23, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_A0AFK3 620s # Test 24, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_WZNFK3 620s # Test 25, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_PJ4FK3 620s # Test 26, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_9T4FK3 620s # Test 27, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_2N4FK3 620s # Test 28, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_JSEHK3 620s # Test 29, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_4IFHK3 620s # Test 30, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_LW7GK3 620s # Test 31, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_M27GK3 620s # Test 32, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_FNXGK3 620s # Test 33, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_N5UOK3 620s # Test 34, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_O8TOK3 620s # Test 35, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_30TOK3 620s # Test 36, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_07NOK3 620s # Test 37, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_FURPK3 620s # Test 38, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_NRMPK3 620s # Test 39, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_AGHPK3 620s # Test 40, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_KYAPK3 620s # Test 41, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_KAWKK3 620s # Test 42, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_BFYKK3 620s # Test 43, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_4GPKK3 620s # Test 44, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_VHJKK3 620s # Test 45, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_0GIKK3 620s # Test 46, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_5NCKK3 620s # Test 47, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_QFCKK3 620s # Test 48, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_YEEKK3 620s # We do not have CAP_DAC_OVERRIDE or equivalent 620s ok 41 /file/replace/write-only 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/system-config1:/tmp/test_file_VYFOK3/file/replace/read-write/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/system-data1:/tmp/test_file_VYFOK3/file/replace/read-write/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/replace/read-write/.dirs/runtime 620s # /file/replace/read-write summary: Test various situations for g_file_replace() 620s # Current umask: 2 620s # Test 0, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_2UEKK3 620s # Test 1, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_22LLK3 620s # Test 2, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_P7OLK3 620s # Test 3, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_X4FLK3 620s # Test 4, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_DZFLK3 620s # Test 5, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_00ELK3 620s # Test 6, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_8D8KK3 620s # Test 7, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_5EALK3 620s # Test 8, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_862KK3 620s # Test 9, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_PY2KK3 620s # Test 10, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_DG4KK3 620s # Test 11, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_5IDMK3 620s # Test 12, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_A7DMK3 620s # Test 13, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_MVCMK3 620s # Test 14, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_TL7LK3 620s # Test 15, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_YLY6J3 620s # Test 16, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_J0N6J3 620s # Test 17, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_6HI6J3 620s # Test 18, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_PTK6J3 620s # Test 19, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_OFB6J3 620s # Test 20, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_SBD6J3 620s # Test 21, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_VLN7J3 620s # Test 22, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_IPL7J3 620s # Test 23, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_2GL7J3 620s # Test 24, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_42G7J3 620s # Test 25, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_ZG76J3 620s # Test 26, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_Q456J3 620s # Test 27, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_FX56J3 620s # Test 28, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_VP16J3 620s # Test 29, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_T536J3 620s # Test 30, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_F136J3 620s # Test 31, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_WZ26J3 620s # Test 32, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_Q087J3 620s # Test 33, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_P7B8J3 620s # Test 34, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_ABB8J3 620s # Test 35, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_K5A8J3 620s # Test 36, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_2407J3 620s # Test 37, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_9EV7J3 620s # Test 38, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_LUY7J3 620s # Test 39, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_EEQ7J3 620s # Test 40, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_WIT7J3 620s # Test 41, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_0OW8J3 620s # Test 42, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_FNS8J3 620s # Test 43, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_4OV8J3 620s # Test 44, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_WRM8J3 620s # Test 45, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_MLM8J3 620s # Test 46, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_7KP8J3 620s # Test 47, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_JCP8J3 620s # Test 48, using temporary directory /tmp/test_file_VYFOK3/g_file_replace_9NE8J3 620s # We do not have CAP_DAC_OVERRIDE or equivalent 620s ok 42 /file/replace/read-write 620s # End of replace tests 620s # Start of copy tests 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/system-config1:/tmp/test_file_VYFOK3/file/copy/progress/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/system-data1:/tmp/test_file_VYFOK3/file/copy/progress/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/copy/progress/.dirs/runtime 620s ok 43 /file/copy/progress 620s # End of copy tests 620s # Start of writev tests 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/no-bytes-written/.dirs/runtime 620s ok 44 /file/writev/no-bytes-written 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/no-vectors/.dirs/runtime 620s ok 45 /file/writev/no-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/empty-vectors/.dirs/runtime 620s ok 46 /file/writev/empty-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/too-big-vectors/.dirs/runtime 620s ok 47 /file/writev/too-big-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async/.dirs/runtime 620s ok 48 /file/writev/async 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async_all/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async_all/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async_all/.dirs/runtime 620s ok 49 /file/writev/async_all 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async_all-empty-vectors/.dirs/runtime 620s ok 50 /file/writev/async_all-empty-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async_all-no-vectors/.dirs/runtime 620s ok 51 /file/writev/async_all-no-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async_all-to-big-vectors/.dirs/runtime 620s ok 52 /file/writev/async_all-to-big-vectors 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/system-config1:/tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/system-data1:/tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/writev/async_all-cancellation/.dirs/runtime 620s ok - glib/file.test 620s # Running test: glib/thread-pool-slow.test 620s ok 53 /file/writev/async_all-cancellation 620s # End of writev tests 620s # Start of from-uri tests 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/system-config1:/tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/system-data1:/tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/from-uri/ignores-query-string/.dirs/runtime 620s ok 54 /file/from-uri/ignores-query-string 620s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/home 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/cache 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/system-config1:/tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/system-config2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/config 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/system-data1:/tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/system-data2 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/data 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/state 620s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_VYFOK3/file/from-uri/ignores-fragment/.dirs/runtime 620s ok 55 /file/from-uri/ignores-fragment 620s # End of from-uri tests 620s # End of file tests 620s TAP version 14 620s # random seed: R02S43057e7346388492094c763777088ae6 620s 1..7 620s # Start of threadpool tests 620s ok 1 /threadpool/functions 621s ok 2 /threadpool/stop-unused 621s # slow test /threadpool/stop-unused executed in 0.51 secs 621s ok 3 /threadpool/pools 621s # [unsorted] ===> pushed new thread with id:49, number of threads:1, unprocessed:1 621s # [unsorted] ===> pushed new thread with id:37, number of threads:2, unprocessed:1 621s # [unsorted] ===> pushed new thread with id:89, number of threads:3, unprocessed:1 621s # [unsorted] ===> pushed new thread with id:70, number of threads:4, unprocessed:2 621s # [unsorted] ===> pushed new thread with id:88, number of threads:5, unprocessed:3 621s # [unsorted] ===> pushed new thread with id:90, number of threads:6, unprocessed:4 621s # [unsorted] ===> pushed new thread with id:43, number of threads:7, unprocessed:5 621s # [unsorted] ===> pushed new thread with id:62, number of threads:8, unprocessed:6 621s # [unsorted] ===> pushed new thread with id:84, number of threads:9, unprocessed:7 621s # [unsorted] ===> pushed new thread with id:2, number of threads:10, unprocessed:6 621s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:7 621s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:8 621s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:9 621s # [unsorted] ===> pushed new thread with id:14, number of threads:10, unprocessed:10 621s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:11 621s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:12 621s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:13 621s # [unsorted] ===> pushed new thread with id:79, number of threads:10, unprocessed:14 621s # [unsorted] ===> pushed new thread with id:27, number of threads:10, unprocessed:15 621s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:16 621s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:17 621s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:18 621s # [unsorted] ===> pushed new thread with id:54, number of threads:10, unprocessed:19 621s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:20 621s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:21 621s # [unsorted] ===> pushed new thread with id:65, number of threads:10, unprocessed:22 621s # [unsorted] ===> pushed new thread with id:75, number of threads:10, unprocessed:23 621s # [unsorted] ===> pushed new thread with id:76, number of threads:10, unprocessed:24 621s # [unsorted] ===> pushed new thread with id:80, number of threads:10, unprocessed:25 621s # [unsorted] ===> pushed new thread with id:58, number of threads:10, unprocessed:26 621s # [unsorted] ===> pushed new thread with id:6, number of threads:10, unprocessed:27 621s # [unsorted] ===> pushed new thread with id:98, number of threads:10, unprocessed:28 621s # [unsorted] ===> pushed new thread with id:57, number of threads:10, unprocessed:29 621s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:30 621s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:31 621s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:32 621s # [unsorted] ===> pushed new thread with id:61, number of threads:10, unprocessed:33 621s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:34 621s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:35 621s # [unsorted] ===> pushed new thread with id:92, number of threads:10, unprocessed:36 621s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:37 621s # [unsorted] ===> pushed new thread with id:41, number of threads:10, unprocessed:38 621s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:39 621s # [unsorted] ===> pushed new thread with id:3, number of threads:10, unprocessed:40 621s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:41 621s # [unsorted] ===> pushed new thread with id:31, number of threads:10, unprocessed:42 621s # [unsorted] ===> pushed new thread with id:3, number of threads:10, unprocessed:43 621s # [unsorted] ===> pushed new thread with id:69, number of threads:10, unprocessed:44 621s # [unsorted] ===> pushed new thread with id:53, number of threads:10, unprocessed:45 621s # [unsorted] ===> pushed new thread with id:64, number of threads:10, unprocessed:46 621s # [unsorted] ===> pushed new thread with id:18, number of threads:10, unprocessed:47 621s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:48 621s # [unsorted] ===> pushed new thread with id:24, number of threads:10, unprocessed:49 621s # [unsorted] ===> pushed new thread with id:25, number of threads:10, unprocessed:50 621s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:51 621s # [unsorted] ===> pushed new thread with id:96, number of threads:10, unprocessed:52 621s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:53 621s # [unsorted] ===> pushed new thread with id:55, number of threads:10, unprocessed:54 621s # [unsorted] ===> pushed new thread with id:90, number of threads:10, unprocessed:55 621s # [unsorted] ===> pushed new thread with id:18, number of threads:10, unprocessed:56 621s # [unsorted] ===> pushed new thread with id:17, number of threads:10, unprocessed:57 621s # [unsorted] ===> pushed new thread with id:14, number of threads:10, unprocessed:58 621s # [unsorted] ===> pushed new thread with id:13, number of threads:10, unprocessed:59 621s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:60 621s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:61 621s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:62 621s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:63 621s # [unsorted] ===> pushed new thread with id:4, number of threads:10, unprocessed:64 621s # [unsorted] ===> pushed new thread with id:57, number of threads:10, unprocessed:65 621s # [unsorted] ===> pushed new thread with id:81, number of threads:10, unprocessed:66 621s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:67 621s # [unsorted] ===> pushed new thread with id:36, number of threads:10, unprocessed:68 621s # [unsorted] ===> pushed new thread with id:72, number of threads:10, unprocessed:69 621s # [unsorted] ===> pushed new thread with id:31, number of threads:10, unprocessed:70 621s # [unsorted] ===> pushed new thread with id:78, number of threads:10, unprocessed:71 621s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:72 621s # [unsorted] ===> pushed new thread with id:59, number of threads:10, unprocessed:73 621s # [unsorted] ===> pushed new thread with id:38, number of threads:10, unprocessed:74 621s # [unsorted] ===> pushed new thread with id:53, number of threads:10, unprocessed:75 621s # [unsorted] ===> pushed new thread with id:89, number of threads:10, unprocessed:76 621s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:77 621s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:78 621s # [unsorted] ===> pushed new thread with id:4, number of threads:10, unprocessed:79 621s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:80 621s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:81 621s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:82 621s # [unsorted] ===> pushed new thread with id:96, number of threads:10, unprocessed:83 621s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:84 621s # [unsorted] ===> pushed new thread with id:40, number of threads:10, unprocessed:85 621s # [unsorted] ===> pushed new thread with id:72, number of threads:10, unprocessed:86 621s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:87 621s # [unsorted] ===> pushed new thread with id:54, number of threads:10, unprocessed:88 621s # [unsorted] ===> pushed new thread with id:45, number of threads:10, unprocessed:89 621s # [unsorted] ===> pushed new thread with id:46, number of threads:10, unprocessed:90 621s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:91 621s # [unsorted] ===> pushed new thread with id:54, number of threads:10, unprocessed:92 621s # [unsorted] ===> pushed new thread with id:71, number of threads:10, unprocessed:93 621s # [unsorted] ===> pushed new thread with id:33, number of threads:10, unprocessed:94 621s # [unsorted] ===> pushed new thread with id:78, number of threads:10, unprocessed:95 621s # [unsorted] ===> pushed new thread with id:45, number of threads:10, unprocessed:96 621s ok 4 /threadpool/no-sort 621s # [ sorted] ===> pushed new thread with id:14, number of threads:0, unprocessed:1 621s # [ sorted] ===> pushed new thread with id:90, number of threads:0, unprocessed:2 621s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:3 621s # [ sorted] ===> pushed new thread with id:53, number of threads:0, unprocessed:4 621s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:5 621s # [ sorted] ===> pushed new thread with id:7, number of threads:0, unprocessed:6 621s # [ sorted] ===> pushed new thread with id:92, number of threads:0, unprocessed:7 621s # [ sorted] ===> pushed new thread with id:14, number of threads:0, unprocessed:8 621s # [ sorted] ===> pushed new thread with id:12, number of threads:0, unprocessed:9 621s # [ sorted] ===> pushed new thread with id:35, number of threads:0, unprocessed:10 621s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:11 621s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:12 621s # [ sorted] ===> pushed new thread with id:41, number of threads:0, unprocessed:13 621s # [ sorted] ===> pushed new thread with id:34, number of threads:0, unprocessed:14 621s # [ sorted] ===> pushed new thread with id:50, number of threads:0, unprocessed:15 621s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:16 621s # [ sorted] ===> pushed new thread with id:35, number of threads:0, unprocessed:17 621s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:18 621s # [ sorted] ===> pushed new thread with id:5, number of threads:0, unprocessed:19 621s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:20 621s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:21 621s # [ sorted] ===> pushed new thread with id:30, number of threads:0, unprocessed:22 621s # [ sorted] ===> pushed new thread with id:2, number of threads:0, unprocessed:23 621s # [ sorted] ===> pushed new thread with id:87, number of threads:0, unprocessed:24 621s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:25 621s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:26 621s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:27 621s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:28 621s # [ sorted] ===> pushed new thread with id:28, number of threads:0, unprocessed:29 621s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:30 621s # [ sorted] ===> pushed new thread with id:73, number of threads:0, unprocessed:31 621s # [ sorted] ===> pushed new thread with id:76, number of threads:0, unprocessed:32 621s # [ sorted] ===> pushed new thread with id:70, number of threads:0, unprocessed:33 621s # [ sorted] ===> pushed new thread with id:38, number of threads:0, unprocessed:34 621s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:35 621s # [ sorted] ===> pushed new thread with id:56, number of threads:0, unprocessed:36 621s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:37 621s # [ sorted] ===> pushed new thread with id:95, number of threads:0, unprocessed:38 621s # [ sorted] ===> pushed new thread with id:46, number of threads:0, unprocessed:39 621s # [ sorted] ===> pushed new thread with id:75, number of threads:0, unprocessed:40 621s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:41 621s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:42 621s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:43 621s # [ sorted] ===> pushed new thread with id:12, number of threads:0, unprocessed:44 621s # [ sorted] ===> pushed new thread with id:11, number of threads:0, unprocessed:45 621s # [ sorted] ===> pushed new thread with id:63, number of threads:0, unprocessed:46 621s # [ sorted] ===> pushed new thread with id:44, number of threads:0, unprocessed:47 621s # [ sorted] ===> pushed new thread with id:77, number of threads:0, unprocessed:48 621s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:49 621s # [ sorted] ===> pushed new thread with id:7, number of threads:0, unprocessed:50 621s # [ sorted] ===> pushed new thread with id:86, number of threads:0, unprocessed:51 621s # [ sorted] ===> pushed new thread with id:93, number of threads:0, unprocessed:52 621s # [ sorted] ===> pushed new thread with id:16, number of threads:0, unprocessed:53 621s # [ sorted] ===> pushed new thread with id:63, number of threads:0, unprocessed:54 621s # [ sorted] ===> pushed new thread with id:31, number of threads:0, unprocessed:55 621s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:56 621s # [ sorted] ===> pushed new thread with id:62, number of threads:0, unprocessed:57 621s # [ sorted] ===> pushed new thread with id:69, number of threads:0, unprocessed:58 621s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:59 621s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:60 621s # [ sorted] ===> pushed new thread with id:92, number of threads:0, unprocessed:61 621s # [ sorted] ===> pushed new thread with id:11, number of threads:0, unprocessed:62 621s # [ sorted] ===> pushed new thread with id:46, number of threads:0, unprocessed:63 621s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:64 621s # [ sorted] ===> pushed new thread with id:94, number of threads:0, unprocessed:65 621s # [ sorted] ===> pushed new thread with id:76, number of threads:0, unprocessed:66 621s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:67 621s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:68 621s # [ sorted] ===> pushed new thread with id:53, number of threads:0, unprocessed:69 621s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:70 621s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:71 621s # [ sorted] ===> pushed new thread with id:20, number of threads:0, unprocessed:72 621s # [ sorted] ===> pushed new thread with id:56, number of threads:0, unprocessed:73 621s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:74 621s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:75 621s # [ sorted] ===> pushed new thread with id:100, number of threads:0, unprocessed:76 621s # [ sorted] ===> pushed new thread with id:30, number of threads:0, unprocessed:77 621s # [ sorted] ===> pushed new thread with id:75, number of threads:0, unprocessed:78 621s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:79 621s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:80 621s # [ sorted] ===> pushed new thread with id:62, number of threads:0, unprocessed:81 621s # [ sorted] ===> pushed new thread with id:75, number of threads:0, unprocessed:82 621s # [ sorted] ===> pushed new thread with id:50, number of threads:0, unprocessed:83 621s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:84 621s # [ sorted] ===> pushed new thread with id:22, number of threads:0, unprocessed:85 621s # [ sorted] ===> pushed new thread with id:8, number of threads:0, unprocessed:86 621s # [ sorted] ===> pushed new thread with id:53, number of threads:0, unprocessed:87 621s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:88 621s # [ sorted] ===> pushed new thread with id:58, number of threads:0, unprocessed:89 621s # [ sorted] ===> pushed new thread with id:4, number of threads:0, unprocessed:90 621s # [ sorted] ===> pushed new thread with id:31, number of threads:0, unprocessed:91 621s # [ sorted] ===> pushed new thread with id:20, number of threads:0, unprocessed:92 621s # [ sorted] ===> pushed new thread with id:75, number of threads:0, unprocessed:93 621s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:94 621s # [ sorted] ===> pushed new thread with id:75, number of threads:0, unprocessed:95 621s # [ sorted] ===> pushed new thread with id:99, number of threads:0, unprocessed:96 621s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:97 621s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:98 621s # [ sorted] ===> pushed new thread with id:95, number of threads:0, unprocessed:99 621s # [ sorted] ===> pushed new thread with id:2, number of threads:0, unprocessed:100 621s # Starting thread pool processing 621s ok 5 /threadpool/sort 621s ok 6 /threadpool/stop-unused-multiple 621s # slow test /threadpool/stop-unused-multiple executed in 0.53 secs 621s # Pool idle thread count: 0, unprocessed jobs: 50 622s # Pool idle thread count: 0, unprocessed jobs: 0 622s # Pool idle thread count: 0, unprocessed jobs: 0 623s # Pool idle thread count: 10, unprocessed jobs: 0 623s # Pool idle thread count: 10, unprocessed jobs: 0 623s # Pool idle thread count: 10, unprocessed jobs: 0 623s # Pool idle thread count: 10, unprocessed jobs: 0 624s # Pool idle thread count: 10, unprocessed jobs: 0 624s # Pool idle thread count: 10, unprocessed jobs: 0 624s # Executing: glib/thread-pool-slow.test 624s # Pool idle thread count: 10, unprocessed jobs: 0 624s # Pool idle thread count: 10, unprocessed jobs: 0 625s # Pool idle thread count: 10, unprocessed jobs: 0 625s # Pool idle thread count: 10, unprocessed jobs: 0 625s # Pool idle thread count: 10, unprocessed jobs: 0 625s # Pool idle thread count: 10, unprocessed jobs: 0 626s # Pool idle thread count: 10, unprocessed jobs: 0 626s # Pool idle thread count: 10, unprocessed jobs: 0 626s # Pool idle thread count: 10, unprocessed jobs: 0 626s # Pool idle thread count: 10, unprocessed jobs: 0 627s # Pool idle thread count: 10, unprocessed jobs: 0 627s # Pool idle thread count: 10, unprocessed jobs: 0 627s # Pool idle thread count: 10, unprocessed jobs: 0 627s # Pool idle thread count: 10, unprocessed jobs: 0 628s # Pool idle thread count: 10, unprocessed jobs: 0 628s # Pool idle thread count: 10, unprocessed jobs: 0 628s # Pool idle thread count: 10, unprocessed jobs: 0 628s # Pool idle thread count: 10, unprocessed jobs: 0 629s # Pool idle thread count: 10, unprocessed jobs: 0 629s # Pool idle thread count: 10, unprocessed jobs: 0 629s # Executing: glib/thread-pool-slow.test 629s # Pool idle thread count: 10, unprocessed jobs: 0 629s # Pool idle thread count: 10, unprocessed jobs: 0 630s # Pool idle thread count: 10, unprocessed jobs: 0 630s # Pool idle thread count: 10, unprocessed jobs: 0 630s # Pool idle thread count: 10, unprocessed jobs: 0 630s # Pool idle thread count: 10, unprocessed jobs: 0 631s # Pool idle thread count: 10, unprocessed jobs: 2 631s # Pool idle thread count: 10, unprocessed jobs: 2 631s # Pool idle thread count: 8, unprocessed jobs: 0 631s # Pool idle thread count: 8, unprocessed jobs: 0 631s # Pool idle thread count: 10, unprocessed jobs: 0 631s # Pool idle thread count: 10, unprocessed jobs: 0 632s # Pool idle thread count: 10, unprocessed jobs: 0 632s # Pool idle thread count: 10, unprocessed jobs: 0 632s # Pool idle thread count: 10, unprocessed jobs: 0 632s # Pool idle thread count: 10, unprocessed jobs: 0 633s # Pool idle thread count: 2, unprocessed jobs: 0 633s # Pool idle thread count: 2, unprocessed jobs: 0 633s # Pool idle thread count: 2, unprocessed jobs: 0 633s # Pool idle thread count: 2, unprocessed jobs: 0 634s # Pool idle thread count: 2, unprocessed jobs: 0 634s # Pool idle thread count: 2, unprocessed jobs: 0 634s # Executing: glib/thread-pool-slow.test 634s # Pool idle thread count: 2, unprocessed jobs: 0 634s # Pool idle thread count: 2, unprocessed jobs: 0 635s # Pool idle thread count: 2, unprocessed jobs: 0 635s # Pool idle thread count: 2, unprocessed jobs: 0 635s # Pool idle thread count: 2, unprocessed jobs: 0 635s # Pool idle thread count: 2, unprocessed jobs: 0 636s # Pool idle thread count: 2, unprocessed jobs: 0 636s # Pool idle thread count: 2, unprocessed jobs: 0 636s # Pool idle thread count: 2, unprocessed jobs: 0 636s # Pool idle thread count: 2, unprocessed jobs: 0 637s # Pool idle thread count: 2, unprocessed jobs: 0 637s # Pool idle thread count: 2, unprocessed jobs: 0 637s # Pool idle thread count: 2, unprocessed jobs: 0 637s # Pool idle thread count: 2, unprocessed jobs: 0 638s # Pool idle thread count: 2, unprocessed jobs: 0 638s # Pool idle thread count: 2, unprocessed jobs: 0 638s # Pool idle thread count: 2, unprocessed jobs: 0 638s # Pool idle thread count: 2, unprocessed jobs: 0 639s # Pool idle thread count: 2, unprocessed jobs: 0 639s # Pool idle thread count: 2, unprocessed jobs: 0 639s # Executing: glib/thread-pool-slow.test 639s # Pool idle thread count: 2, unprocessed jobs: 0 639s # Pool idle thread count: 2, unprocessed jobs: 0 640s # Pool idle thread count: 2, unprocessed jobs: 0 640s # Pool idle thread count: 2, unprocessed jobs: 0 640s # Pool idle thread count: 2, unprocessed jobs: 0 640s # Pool idle thread count: 2, unprocessed jobs: 0 641s # Pool idle thread count: 2, unprocessed jobs: 0 641s # Pool idle thread count: 2, unprocessed jobs: 0 641s ok 7 /threadpool/idle-time 641s # slow test /threadpool/idle-time executed in 19.54 secs 641s # End of threadpool tests 641s ok - glib/thread-pool-slow.test 641s # Running test: glib/converter.test 641s TAP version 14 641s # random seed: R02S3f6dfde96e0126162bd362665bc814a8 641s 1..3 641s # Start of converter tests 641s ok 1 /converter/bytes 641s ok 2 /converter/extra-bytes-at-end 641s ok 3 /converter/gzip-os-property 641s # End of converter tests 641s ok - glib/converter.test 641s # Running test: glib/sequence.test 641s TAP version 14 641s # random seed: R02Sd2f99930d24e6a9cd50955ba85c6a6a7 641s 1..16 641s # Start of sequence tests 641s ok 1 /sequence/out-of-range-jump 641s ok 2 /sequence/iter-move 641s ok 3 /sequence/insert-sorted-non-pointer 641s ok 4 /sequence/stable-sort 641s ok 5 /sequence/is_empty 641s # Start of random tests 642s ok 6 /sequence/random/seed:825541564 642s # slow test /sequence/random/seed:825541564 executed in 0.72 secs 643s ok 7 /sequence/random/seed:801678400 643s # slow test /sequence/random/seed:801678400 executed in 0.69 secs 643s ok 8 /sequence/random/seed:1477639090 643s # slow test /sequence/random/seed:1477639090 executed in 0.72 secs 644s # Executing: glib/sequence.test 644s ok 9 /sequence/random/seed:3369132895 644s # slow test /sequence/random/seed:3369132895 executed in 0.64 secs 645s ok 10 /sequence/random/seed:1192944867 645s # slow test /sequence/random/seed:1192944867 executed in 0.70 secs 645s ok 11 /sequence/random/seed:770458294 645s # slow test /sequence/random/seed:770458294 executed in 0.71 secs 646s ok 12 /sequence/random/seed:1099575817 646s # slow test /sequence/random/seed:1099575817 executed in 0.67 secs 647s ok 13 /sequence/random/seed:590523467 647s # slow test /sequence/random/seed:590523467 executed in 0.69 secs 647s ok 14 /sequence/random/seed:3583571454 647s # slow test /sequence/random/seed:3583571454 executed in 0.71 secs 648s ok 15 /sequence/random/seed:579241222 648s # slow test /sequence/random/seed:579241222 executed in 0.71 secs 649s ok 16 /sequence/random/seed:1909661909 649s # slow test /sequence/random/seed:1909661909 executed in 0.70 secs 649s # End of random tests 649s # End of sequence tests 649s ok - glib/sequence.test 649s # Running test: glib/gsocketclient-slow.test 649s TAP version 14 649s # random seed: R02S0a2b92b669aa558ff661a02958300137 649s 1..4 649s # Start of socket-client tests 649s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3184 649s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 649s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x7fa2d9578e0 and GSocketClientAsyncConnectData 0x7fa2d952520 649s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 649s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 649s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x7fa2d95b540 for GSocketClientAsyncConnectData 0x7fa2d952520 649s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 649s # Executing: glib/gsocketclient-slow.test 649s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 649s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 649s # GLib-GIO-DEBUG: GSocketClient: Connection attempt failed: Connection refused 649s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 649s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 649s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x7fa2d95b540 for GSocketClientAsyncConnectData 0x7fa2d952520 649s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 650s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 650s # GLib-GIO-DEBUG: GSocketClient: Connection attempt failed: Connection refused 650s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Could not connect to localhost: Connection refused 650s ok 1 /socket-client/connection-fail 650s # slow test /socket-client/connection-fail executed in 1.20 secs 650s # Start of happy-eyeballs tests 650s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x7fa2d95a0d0 and GSocketClientAsyncConnectData 0x7fa2d95b070 650s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 650s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 650s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x7fa2d95e340 for GSocketClientAsyncConnectData 0x7fa2d95b070 650s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 651s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 651s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 651s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 651s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 651s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 651s ok 2 /socket-client/happy-eyeballs/slow 651s # slow test /socket-client/happy-eyeballs/slow executed in 0.61 secs 651s # Start of cancellation tests 651s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x7fa2d95ad50 and GSocketClientAsyncConnectData 0x7fa2d95e5e0 651s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 651s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Operation was cancelled 651s ok 3 /socket-client/happy-eyeballs/cancellation/instant 651s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x7fa2d959ff0 and GSocketClientAsyncConnectData 0x7fa2d95df70 651s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 651s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 651s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x7fa2d95eba0 for GSocketClientAsyncConnectData 0x7fa2d95df70 651s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 651s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 651s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 651s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 651s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 651s # GLib-GIO-DEBUG: GSocketClient: Connection cancelled! 651s ok 4 /socket-client/happy-eyeballs/cancellation/delayed 651s # slow test /socket-client/happy-eyeballs/cancellation/delayed executed in 0.60 secs 651s # End of cancellation tests 651s # End of happy-eyeballs tests 651s ok - glib/gsocketclient-slow.test 651s # Running test: glib/mount-operation.test 651s # End of socket-client tests 651s TAP version 14 651s # random seed: R02S60d42c73409743282cfc9ac64936979b 651s 1..2 651s # Start of mount-operation tests 651s ok 1 /mount-operation/construction 651s ok 2 /mount-operation/properties 651s # End of mount-operation tests 651s ok - glib/mount-operation.test 651s # Running test: glib/objects-refcount1.test 651s TAP version 14 651s # random seed: R02S91c2e835ca94908aa27b1a031a93ed06 651s 1..1 651s # Start of gobject tests 651s # Start of refcount tests 651s # init 0x11de4e71dd90 651s # 651s # init 0x11de4e71dea0 651s # 654s # Executing: glib/objects-refcount1.test 656s ok - glib/objects-refcount1.test 656s # Running test: glib/singleton.test 656s # dispose 0x11de4e71dd90! 656s # 656s # dispose 0x11de4e71dea0! 656s # 656s ok 1 /gobject/refcount/object-basics 656s # slow test /gobject/refcount/object-basics executed in 5.00 secs 656s # End of refcount tests 656s # End of gobject tests 656s TAP version 14 656s # random seed: R02Sd2d4022d4acffb22ed59b894b0096160 656s 1..2 656s # Start of gobject tests 656s # Start of singleton tests 656s ok 1 /gobject/singleton/construction 656s # /gobject/singleton/construct-property summary: Test that creating a singleton with a construct-time property works 656s ok - glib/singleton.test 656s # Running test: glib/gdbus-method-invocation.test 656s ok - glib/gdbus-method-invocation.test 656s # Running test: glib/tls-database.test 656s ok - glib/tls-database.test 656s # Running test: glib/rec-mutex.test 656s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2666 656s ok 2 /gobject/singleton/construct-property 656s # End of singleton tests 656s # End of gobject tests 656s TAP version 14 656s # random seed: R02Sc6c94fc52f108b45126decdc4c5c6430 656s 1..1 656s # Start of gdbus tests 656s # Start of method-invocation tests 656s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/home 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/cache 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/system-config1:/tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/system-config2 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/config 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/system-data1:/tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/system-data2 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/data 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/state 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-method-invocation_GSM8J3/gdbus/method-invocation/return/.dirs/runtime 656s # /gdbus/method-invocation/return summary: Test calling g_dbus_method_invocation_return_*() in various ways 656s # Calling org.freedesktop.DBus.Properties.Get 656s # Calling org.freedesktop.DBus.Properties.Get 656s # Calling org.freedesktop.DBus.Properties.Get 656s # Calling org.freedesktop.DBus.Properties.Set 656s # Calling org.freedesktop.DBus.Properties.GetAll 656s # Calling org.example.Foo.WrongReturnType 656s # Calling org.example.Foo.GetFDs 656s # Calling org.example.Foo.GetFDs 656s # Calling org.example.Foo.ReturnError 656s # Calling org.example.Foo.CloseBeforeReturning 656s ok 1 /gdbus/method-invocation/return 656s # End of method-invocation tests 656s # End of gdbus tests 656s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 656s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 656s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 656s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 656s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 656s TAP version 14 656s # random seed: R02S4b8eaf1aaf2917286dcbd02421a4e0fd 656s 1..1 656s # Start of tls-backend tests 656s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ‘gio-tls-backend’ 656s ok 1 /tls-backend/set-default-database 656s # End of tls-backend tests 656s TAP version 14 656s # random seed: R02Sd5ff37ef9552aa7e0b268b07fc21ff83 656s 1..29 656s # Start of thread tests 656s ok 1 /thread/rec-mutex1 656s ok 2 /thread/rec-mutex2 656s ok 3 /thread/rec-mutex3 656s ok - glib/rec-mutex.test 656s ok 4 /thread/rec-mutex4 656s # Start of rec-mutex tests 656s # Start of perf tests 656s # Start of uncontended tests 656s # max perf: 1.000000 mips 656s ok 5 /thread/rec-mutex/perf/uncontended/depth1 656s # max perf: inf mips 656s ok 6 /thread/rec-mutex/perf/uncontended/depth2 656s # max perf: 1.000000 mips 656s ok 7 /thread/rec-mutex/perf/uncontended/depth3 656s # max perf: inf mips 656s ok 8 /thread/rec-mutex/perf/uncontended/depth4 656s # max perf: inf mips 656s ok 9 /thread/rec-mutex/perf/uncontended/depth5 656s # End of uncontended tests 656s # Start of contended1 tests 656s # max perf: inf mips 656s ok 10 /thread/rec-mutex/perf/contended1/depth1 656s # max perf: inf mips 656s ok 11 /thread/rec-mutex/perf/contended1/depth2 656s # max perf: 2.000000 mips 656s ok 12 /thread/rec-mutex/perf/contended1/depth3 656s # max perf: 2.000000 mips 656s ok 13 /thread/rec-mutex/perf/contended1/depth4 656s # max perf: 2.000000 mips 656s ok 14 /thread/rec-mutex/perf/contended1/depth5 656s # End of contended1 tests 656s # Start of contended2 tests 656s # max perf: 3.000000 mips 656s ok 15 /thread/rec-mutex/perf/contended2/depth1 656s # max perf: inf mips 656s ok 16 /thread/rec-mutex/perf/contended2/depth2 656s # max perf: 3.000000 mips 656s ok 17 /thread/rec-mutex/perf/contended2/depth3 656s # max perf: 3.000000 mips 656s ok 18 /thread/rec-mutex/perf/contended2/depth4 656s # max perf: 3.000000 mips 656s ok 19 /thread/rec-mutex/perf/contended2/depth5 656s # End of contended2 tests 656s # Start of contended3 tests 656s # max perf: 1.333333 mips 656s ok 20 /thread/rec-mutex/perf/contended3/depth1 656s # max perf: 4.000000 mips 656s ok 21 /thread/rec-mutex/perf/contended3/depth2 656s # max perf: 4.000000 mips 656s ok 22 /thread/rec-mutex/perf/contended3/depth3 656s # max perf: 4.000000 mips 656s ok 23 /thread/rec-mutex/perf/contended3/depth4 656s # max perf: 2.000000 mips 656s ok 24 /thread/rec-mutex/perf/contended3/depth5 656s # End of contended3 tests 656s # Start of contended4 tests 656s # max perf: 5.000000 mips 656s ok 25 /thread/rec-mutex/perf/contended4/depth1 656s # max perf: 5.000000 mips 656s ok 26 /thread/rec-mutex/perf/contended4/depth2 656s # max perf: 5.000000 mips 656s ok 27 /thread/rec-mutex/perf/contended4/depth3 656s # max perf: 2.500000 mips 656s ok 28 /thread/rec-mutex/perf/contended4/depth4 656s # max perf: 1.250000 mips 656s ok 29 /thread/rec-mutex/perf/contended4/depth5 656s # End of contended4 tests 656s # End of perf tests 656s # End of rec-mutex tests 656s # End of thread tests 656s # Running test: glib/simple-proxy.test 656s ok - glib/simple-proxy.test 656s # Running test: glib/gdbus-proxy.test 656s TAP version 14 656s # random seed: R02Se7a21cb85ba35fe783555c3ebb71423c 656s 1..3 656s # Start of static-proxy tests 656s ok 1 /static-proxy/uri 656s ok 2 /static-proxy/socks 656s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string *.eee.xx:8000 656s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string 10.0.0.1:8000 656s ok 3 /static-proxy/ignore 656s # End of static-proxy tests 656s TAP version 14 656s # random seed: R02S40abf498b8922dd9f22ab5449852750d 656s 1..5 656s # Start of gdbus tests 656s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/home 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/cache 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/system-config1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/system-config2 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/config 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/system-data1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/system-data2 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/data 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/state 656s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/.dirs/runtime 658s ok 1 /gdbus/proxy 658s # slow test /gdbus/proxy executed in 1.73 secs 658s # Start of proxy tests 658s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/home 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/cache 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/system-config1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/system-config2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/config 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/system-data1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/system-data2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/data 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/state 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-properties/.dirs/runtime 658s ok 2 /gdbus/proxy/no-properties 658s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/home 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/cache 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/system-config1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/system-config2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/config 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/system-data1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/system-data2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/data 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/state 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/wellknown-noauto/.dirs/runtime 658s ok 3 /gdbus/proxy/wellknown-noauto 658s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/home 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/cache 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/system-config1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/system-config2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/config 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/system-data1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/system-data2 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/data 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/state 658s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/async/.dirs/runtime 659s # Executing: glib/gdbus-proxy.test 660s ok 4 /gdbus/proxy/async 660s # slow test /gdbus/proxy/async executed in 1.74 secs 660s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/home 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/cache 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/system-config1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/system-config2 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/config 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/system-data1:/tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/system-data2 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/data 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/state 660s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_RFB5J3/gdbus/proxy/no-match-rule/.dirs/runtime 660s # /gdbus/proxy/no-match-rule summary: Test that G_DBUS_PROXY_FLAGS_NO_MATCH_RULE works 660s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1109 662s ok 5 /gdbus/proxy/no-match-rule 662s # slow test /gdbus/proxy/no-match-rule executed in 1.75 secs 662s # End of proxy tests 662s # End of gdbus tests 662s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 662s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 662s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 662s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 662s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 662s ok - glib/gdbus-proxy.test 662s # Running test: glib/unix.test 662s TAP version 14 662s # random seed: R02S64ba9c3173c857da6444649384ea3d94 662s 1..20 662s # Start of glib-unix tests 662s # /glib-unix/closefrom summary: Test g_closefrom(), g_fdwalk_set_cloexec() 662s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3247 662s ok 1 /glib-unix/closefrom 662s ok 2 /glib-unix/pipe 662s # /glib-unix/pipe-stdio-overwrite summary: Test that g_unix_open_pipe() will use the first available FD, even if it’s stdin/stdout/stderr 662s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2795 662s ok 3 /glib-unix/pipe-stdio-overwrite 662s # /glib-unix/pipe-struct summary: Test GUnixPipe structure 662s ok 4 /glib-unix/pipe-struct 662s # /glib-unix/pipe-struct-auto summary: Test g_auto(GUnixPipe) 662s ok 5 /glib-unix/pipe-struct-auto 662s ok 6 /glib-unix/error 662s ok 7 /glib-unix/nonblocking 662s ok 8 /glib-unix/sighup 662s # slow test /glib-unix/sighup executed in 0.50 secs 663s ok 9 /glib-unix/sigterm 663s # slow test /glib-unix/sigterm executed in 0.50 secs 663s ok 10 /glib-unix/sighup_again 663s # slow test /glib-unix/sighup_again executed in 0.50 secs 663s ok 11 /glib-unix/sighup_add_remove 663s ok 12 /glib-unix/sighup_nested 664s # Executing: glib/unix.test 665s ok 13 /glib-unix/callback_after_signal 665s # slow test /glib-unix/callback_after_signal executed in 2.00 secs 665s ok 14 /glib-unix/child-wait 665s # Start of closefrom tests 665s # Start of subprocess tests 665s # End of subprocess tests 665s # End of closefrom tests 665s # Start of pipe tests 665s # /glib-unix/pipe/fd-cloexec summary: Test that FD_CLOEXEC is still accepted as an argument to g_unix_open_pipe() 665s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3459 665s # GLib-DEBUG: g_unix_open_pipe() called with FD_CLOEXEC; please migrate to using O_CLOEXEC instead 665s ok 15 /glib-unix/pipe/fd-cloexec 665s # End of pipe tests 665s # Start of sighup tests 666s ok 16 /glib-unix/sighup/alternate-stack 666s # slow test /glib-unix/sighup/alternate-stack executed in 1.00 secs 666s # End of sighup tests 666s # Start of sigterm tests 667s ok 17 /glib-unix/sigterm/alternate-stack 667s # slow test /glib-unix/sigterm/alternate-stack executed in 1.00 secs 667s # End of sigterm tests 667s # Start of sighup_again tests 668s ok - glib/unix.test 668s # Running test: glib/fileutils.test 668s ok 18 /glib-unix/sighup_again/alternate-stack 668s # slow test /glib-unix/sighup_again/alternate-stack executed in 1.00 secs 668s # End of sighup_again tests 668s # Start of get-passwd-entry tests 668s # /glib-unix/get-passwd-entry/root summary: Tests that g_unix_get_passwd_entry() works for a known-existing username. 668s ok 19 /glib-unix/get-passwd-entry/root 668s # /glib-unix/get-passwd-entry/nonexistent summary: Tests that g_unix_get_passwd_entry() returns an error for a nonexistent username. 668s ok 20 /glib-unix/get-passwd-entry/nonexistent 668s # End of get-passwd-entry tests 668s # End of glib-unix tests 668s TAP version 14 668s # random seed: R02S41725feff8a4df0337b27761f73a21d8 668s 1..27 668s # Start of fileutils tests 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/paths/.dirs/runtime 668s ok 1 /fileutils/paths 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/build-path/.dirs/runtime 668s ok 2 /fileutils/build-path 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/build-pathv/.dirs/runtime 668s ok 3 /fileutils/build-pathv 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/build-filename/.dirs/runtime 668s ok 4 /fileutils/build-filename 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/build-filenamev/.dirs/runtime 668s ok 5 /fileutils/build-filenamev 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents/.dirs/runtime 668s # We do not have CAP_DAC_OVERRIDE or equivalent 668s # Checking g_mkdir_with_parents() in subdir ./hum/ 668s # Checking g_mkdir_with_parents() in subdir ./hii///haa/hee/ 668s ok 6 /fileutils/mkdir-with-parents 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/mkdir-with-parents-permission/.dirs/runtime 668s # We do not have CAP_DAC_OVERRIDE or equivalent 668s ok 7 /fileutils/mkdir-with-parents-permission 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/format-size-for-display/.dirs/runtime 668s ok 8 /fileutils/format-size-for-display 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/errors/.dirs/runtime 668s ok 9 /fileutils/errors 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/basename/.dirs/runtime 668s ok 10 /fileutils/basename 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/get-basename/.dirs/runtime 668s ok 11 /fileutils/get-basename 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/dirname/.dirs/runtime 668s ok 12 /fileutils/dirname 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/dir-make-tmp/.dirs/runtime 668s ok 13 /fileutils/dir-make-tmp 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/file-open-tmp/.dirs/runtime 668s ok 14 /fileutils/file-open-tmp 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/file-test/.dirs/runtime 668s ok 15 /fileutils/file-test 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/mkstemp/.dirs/runtime 668s ok 16 /fileutils/mkstemp 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/mkdtemp/.dirs/runtime 668s ok 17 /fileutils/mkdtemp 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/get-contents/.dirs/runtime 668s ok 18 /fileutils/get-contents 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/get-contents-large-file/.dirs/runtime 668s ok 19 /fileutils/get-contents-large-file # SKIP Skipping slow largefile test 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/set-contents/.dirs/runtime 668s ok 20 /fileutils/set-contents 668s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/home 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/cache 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/system-config2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/config 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/system-data2 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/data 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/state 668s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/.dirs/runtime 668s # /fileutils/set-contents-full summary: Test g_file_set_contents_full() with various flags 668s # Flags 0 and test 0 668s # Flags 0 and test 1 668s # Flags 0 and test 2 668s # Flags 0 and test 3 668s # Flags 0 and test 4 668s # Flags 0 and test 5 668s # Flags 0 and test 6 668s # Flags 1 and test 0 668s # Flags 1 and test 1 668s # Flags 1 and test 2 668s # Flags 1 and test 3 668s # Flags 1 and test 4 668s # Flags 1 and test 5 668s # Flags 1 and test 6 668s # Flags 2 and test 0 668s # Flags 2 and test 1 668s # Flags 2 and test 2 668s # Flags 2 and test 3 668s # Flags 2 and test 4 668s # Flags 2 and test 5 668s # Flags 2 and test 6 668s # Flags 3 and test 0 668s # Flags 3 and test 1 668s # Flags 3 and test 2 668s # Flags 3 and test 3 668s # Flags 3 and test 4 668s # Flags 3 and test 5 668s # Flags 3 and test 6 668s # Flags 4 and test 0 668s # Flags 4 and test 1 668s # Flags 4 and test 2 668s # Flags 4 and test 3 668s # Flags 4 and test 4 668s # Flags 4 and test 5 668s # Flags 4 and test 6 668s # Flags 5 and test 0 668s # Flags 5 and test 1 668s # Flags 5 and test 2 668s # Flags 5 and test 3 668s # Flags 5 and test 4 668s # Flags 5 and test 5 668s # Flags 5 and test 6 668s # Flags 6 and test 0 668s # Flags 6 and test 1 668s # Flags 6 and test 2 668s # Flags 6 and test 3 669s # Flags 6 and test 4 669s # Flags 6 and test 5 669s # Flags 6 and test 6 669s ok 21 /fileutils/set-contents-full 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/read-link/.dirs/runtime 669s ok 22 /fileutils/read-link 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/stdio-wrappers/.dirs/runtime 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s ok 23 /fileutils/stdio-wrappers 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/fopen-modes/.dirs/runtime 669s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/119 669s # Testing fopen() mode 'w' 669s # Testing fopen() mode 'r' 669s # Testing fopen() mode 'a' 669s # Testing fopen() mode 'w+' 669s # Testing fopen() mode 'r+' 669s # Testing fopen() mode 'a+' 669s # Testing fopen() mode 'wb' 669s # Testing fopen() mode 'rb' 669s # Testing fopen() mode 'ab' 669s # Testing fopen() mode 'w+b' 669s # Testing fopen() mode 'r+b' 669s # Testing fopen() mode 'a+b' 669s # Testing fopen() mode 'wb+' 669s # Testing fopen() mode 'rb+' 669s # Testing fopen() mode 'ab+' 669s # Testing fopen() mode 'we' 669s # Testing fopen() mode 're' 669s # Testing fopen() mode 'ae' 669s # Testing fopen() mode 'w+e' 669s # Testing fopen() mode 'r+e' 669s # Testing fopen() mode 'a+e' 669s # Testing fopen() mode 'wbe' 669s # Testing fopen() mode 'rbe' 669s # Testing fopen() mode 'abe' 669s # Testing fopen() mode 'w+be' 669s # Testing fopen() mode 'r+be' 669s # Testing fopen() mode 'a+be' 669s # Testing fopen() mode 'wb+e' 669s # Testing fopen() mode 'rb+e' 669s # Testing fopen() mode 'ab+e' 669s # Testing fopen() mode 'web' 669s # Testing fopen() mode 'reb' 669s # Testing fopen() mode 'aeb' 669s # Testing fopen() mode 'w+eb' 669s # Testing fopen() mode 'r+eb' 669s # Testing fopen() mode 'a+eb' 669s # Testing fopen() mode 'web+' 669s # Testing fopen() mode 'reb+' 669s # Testing fopen() mode 'aeb+' 669s ok 24 /fileutils/fopen-modes 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/clear-fd/.dirs/runtime 669s # /fileutils/clear-fd summary: Test g_clear_fd() and g_autofd 669s # Will be closed by autocleanup: 3, -42 669s # Testing error handling 669s ok 25 /fileutils/clear-fd 669s # Start of set-contents-full tests 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-file/.dirs/runtime 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # /fileutils/set-contents-full/read-only-file summary: Test g_file_set_contents_full() on a read-only file 669s ok 26 /fileutils/set-contents-full/read-only-file 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/system-config1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/system-data1:/tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_9O66J3/fileutils/set-contents-full/read-only-directory/.dirs/runtime 669s # /fileutils/set-contents-full/read-only-directory summary: Test g_file_set_contents_full() on a file in a read-only directory 669s # Flags 0 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 1 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 2 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 3 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 4 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 5 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s # Flags 6 669s ok - glib/fileutils.test 669s # Running test: glib/utf8-pointer.test 669s # We do not have CAP_DAC_OVERRIDE or equivalent 669s ok 27 /fileutils/set-contents-full/read-only-directory 669s # End of set-contents-full tests 669s # Start of clear-fd tests 669s # Start of subprocess tests 669s # End of subprocess tests 669s # End of clear-fd tests 669s # End of fileutils tests 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-DFDEK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-02HEK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-GCMEK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-SK0DK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-PZ5DK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-JUFEK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3/glib-file-set-contents-full-rodir-LGAEK3: Directory not empty 669s Unable to clean up temporary directory /tmp/test_fileutils_9O66J3: Directory not empty 669s TAP version 14 669s # random seed: R02S43addc91d0701239b9562f68dde03ae2 669s 1..3 669s # Start of utf8 tests 669s # Executing: glib/utf8-pointer.test 669s ok - glib/utf8-pointer.test 669s # Running test: glib/relation.test 669s ok - glib/relation.test 669s ok 1 /utf8/offsets 669s # slow test /utf8/offsets executed in 0.79 secs 669s ok 2 /utf8/lengths 669s ok 3 /utf8/find 669s # End of utf8 tests 669s TAP version 14 669s # random seed: R02S2c9002f882ea42ffab5aad35a5b04254 669s 1..1 669s # Start of glib tests 669s ok 1 /glib/relation 669s # End of glib tests 669s # Running test: glib/function-info.test 669s TAP version 14 669s # random seed: R02Sd09fea07637f69030d746341f18fbf5b 669s 1..1 669s # Start of function-info tests 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/system-config1:/tmp/test_function-info_58E5J3/function-info/invoker/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/system-data1:/tmp/test_function-info_58E5J3/function-info/invoker/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_function-info_58E5J3/function-info/invoker/.dirs/runtime 669s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 669s # /function-info/invoker summary: Test preparing a function invoker 669s ok 1 /function-info/invoker 669s # End of function-info tests 669s ok - glib/function-info.test 669s # Running test: glib/fileattributematcher.test 669s ok - glib/fileattributematcher.test 669s TAP version 14 669s # random seed: R02S7c1fd3e756bf33b3be7dc36f6f1999de 669s 1..3 669s # Start of fileattributematcher tests 669s ok 1 /fileattributematcher/exact 669s ok 2 /fileattributematcher/equality 669s ok 3 /fileattributematcher/subtract 669s # End of fileattributematcher tests 669s # Running test: glib/properties-refcount3.test 669s TAP version 14 669s # random seed: R02Sd7178fb1f2383a4961df7961f325b44a 669s 1..1 669s # Start of gobject tests 669s # Start of refcount tests 674s # Executing: glib/properties-refcount3.test 679s # Executing: glib/properties-refcount3.test 684s # Executing: glib/properties-refcount3.test 689s # Executing: glib/properties-refcount3.test 694s # Executing: glib/properties-refcount3.test 699s # Executing: glib/properties-refcount3.test 699s ok - glib/properties-refcount3.test 699s # 699s # stopping 699s # 699s # stopped 699s # 699s # 12573943 7126805 699s # 699s ok 1 /gobject/refcount/properties-3 699s # slow test /gobject/refcount/properties-3 executed in 30.00 secs 699s # End of refcount tests 699s # End of gobject tests 699s # Running test: glib/overflow.test 699s TAP version 14 699s # random seed: R02Sd314c543c90255b3d106dcdc05aa7375 699s 1..6 699s # Start of glib tests 699s # Start of checked-math tests 699s ok - glib/overflow.test 699s ok 1 /glib/checked-math/guint-add 699s ok 2 /glib/checked-math/guint-mul 699s ok 3 /glib/checked-math/guint64-add 699s ok 4 /glib/checked-math/guint64-mul 699s ok 5 /glib/checked-math/gsize-add 699s ok 6 /glib/checked-math/gsize-mul 699s # End of checked-math tests 699s # End of glib tests 699s # Running test: glib/hmac.test 699s TAP version 14 699s # random seed: R02S6103271bb94ef07e30f1f7722486c090 699s 1..37 699s # Start of hmac tests 699s ok 1 /hmac/sha1-1 699s ok 2 /hmac/sha1-2 699s ok 3 /hmac/sha1-3 699s ok 4 /hmac/sha1-4 699s ok 5 /hmac/sha1-5 699s ok 6 /hmac/sha1-6 699s ok 7 /hmac/sha1-7 699s ok 8 /hmac/sha256-1 699s ok 9 /hmac/sha256-2 699s ok 10 /hmac/sha256-3 699s ok 11 /hmac/sha256-4 699s ok 12 /hmac/sha256-5 699s ok 13 /hmac/sha256-6 699s ok 14 /hmac/sha384-1 699s ok 15 /hmac/sha384-2 699s ok 16 /hmac/sha384-3 699s ok 17 /hmac/sha384-4 699s ok 18 /hmac/sha384-5 699s ok 19 /hmac/sha384-6 699s ok 20 /hmac/sha512-1 699s ok 21 /hmac/sha512-2 699s ok 22 /hmac/sha512-3 699s ok 23 /hmac/sha512-4 699s ok 24 /hmac/sha512-5 699s ok 25 /hmac/sha512-6 699s ok 26 /hmac/md5-1 699s ok 27 /hmac/md5-2 699s ok 28 /hmac/md5-3 699s ok - glib/hmac.test 699s # Running test: glib/boxed.test 699s ok - glib/boxed.test 699s # Running test: glib/macros-c-89.test 699s ok - glib/macros-c-89.test 699s # Running test: glib/converter-stream.test 699s ok 29 /hmac/md5-4 699s ok 30 /hmac/md5-5 699s ok 31 /hmac/md5-6 699s ok 32 /hmac/md5-7 699s ok 33 /hmac/ref-unref 699s ok 34 /hmac/copy 699s ok 35 /hmac/for-data 699s ok 36 /hmac/for-string 699s ok 37 /hmac/for-bytes 699s # End of hmac tests 699s TAP version 14 699s # random seed: R02S75b593107d26c1a48ab906c175e1de84 699s 1..27 699s # Start of boxed tests 699s ok 1 /boxed/define 699s ok 2 /boxed/ownership 699s ok 3 /boxed/closure 699s ok 4 /boxed/date 699s ok 5 /boxed/value 699s ok 6 /boxed/string 699s ok 7 /boxed/hashtable 699s ok 8 /boxed/array 699s ok 9 /boxed/ptrarray 699s ok 10 /boxed/regex 699s ok 11 /boxed/varianttype 699s ok 12 /boxed/error 699s ok 13 /boxed/datetime 699s ok 14 /boxed/matchinfo 699s ok 15 /boxed/keyfile 699s ok 16 /boxed/mainloop 699s ok 17 /boxed/maincontext 699s ok 18 /boxed/source 699s ok 19 /boxed/variantbuilder 699s ok 20 /boxed/timezone 699s ok 21 /boxed/pollfd 699s ok 22 /boxed/markup 699s ok 23 /boxed/thread 699s ok 24 /boxed/checksum 699s ok 25 /boxed/tree 699s ok 26 /boxed/patternspec 699s ok 27 /boxed/rand 699s # End of boxed tests 699s TAP version 14 699s # random seed: R02S7a776912162b8d9cb08bef8cf8cd1969 699s 1..4 699s # Start of C tests 699s ok 1 /C/standard-89 699s # End of C tests 699s # Start of alignof tests 699s ok 2 /alignof/fallback 699s # End of alignof tests 699s # Start of assert tests 699s ok 3 /assert/static 699s # End of assert tests 699s # Start of struct tests 699s ok 4 /struct/sizeof_member 699s # End of struct tests 699s TAP version 14 699s # random seed: R02S2fd1f5226174b8d817768e0ffeebfa7c 699s 1..17 699s # Start of converter tests 699s ok 1 /converter/basics 699s # End of converter tests 699s # Start of converter-input-stream tests 699s ok 2 /converter-input-stream/expander 699s ok 3 /converter-input-stream/compressor 699s # Start of truncation tests 700s ok 4 /converter-input-stream/truncation/zlib 700s ok 5 /converter-input-stream/truncation/gzip 700s ok 6 /converter-input-stream/truncation/raw 700s # End of truncation tests 700s # Start of charset tests 700s ok 7 /converter-input-stream/charset/utf8->latin1 700s ok 8 /converter-input-stream/charset/latin1->utf8 700s ok 9 /converter-input-stream/charset/fallbacks 700s # End of charset tests 700s # End of converter-input-stream tests 700s # Start of converter-output-stream tests 700s # Start of roundtrip tests 700s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 700s ok 10 /converter-output-stream/roundtrip/zlib-0 700s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 700s ok 11 /converter-output-stream/roundtrip/zlib-9 700s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 700s ok 12 /converter-output-stream/roundtrip/gzip-0 700s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 701s ok 13 /converter-output-stream/roundtrip/gzip-9 701s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 701s ok 14 /converter-output-stream/roundtrip/raw-0 701s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 701s ok 15 /converter-output-stream/roundtrip/raw-9 701s # End of roundtrip tests 701s # End of converter-output-stream tests 701s # Start of converter-stream tests 701s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 701s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xb1762bd2ab0 and GSocketClientAsyncConnectData 0xb1762bcb210 701s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 701s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 701s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xb1762811ba0 for GSocketClientAsyncConnectData 0xb1762bcb210 701s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 701s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 701s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 701s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 701s ok - glib/converter-stream.test 701s # Running test: glib/resources.test 701s ok 16 /converter-stream/pollable 701s ok 17 /converter-stream/leftover 701s # End of converter-stream tests 701s ok - glib/resources.test 701s # Running test: glib/io-channel.test 701s ok - glib/io-channel.test 701s TAP version 14 701s # random seed: R02S662d207b8c2a3e0e68917bfd029b2e66 701s 1..19 701s # Start of resource tests 701s ok 1 /resource/file 701s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 701s ok 2 /resource/file-path 701s ok 3 /resource/data 701s ok 4 /resource/data_unaligned 701s ok 5 /resource/data-corrupt 701s # /resource/data-corrupt-compression summary: Test error handling for corrupt GResource files (specifically, corrupt zlib compression). 701s ok 6 /resource/data-corrupt-compression 701s ok 7 /resource/data-empty 701s ok 8 /resource/registered 701s ok 9 /resource/manual 701s ok 10 /resource/manual2 701s ok 11 /resource/automatic 701s ok 12 /resource/module 701s ok 13 /resource/binary-linked 701s ok 14 /resource/64k 701s GLib-GIO-Message: 21:49:27.730: Adding GResources overlay '/auto_loaded/test1.txt=/usr/libexec/installed-tests/glib/test1.overlay' 701s GLib-GIO-Message: 21:49:27.730: Opened file '/usr/libexec/installed-tests/glib/test1.overlay' as a resource overlay 701s GLib-GIO-Message: 21:49:27.730: Mapped file '/usr/libexec/installed-tests/glib/test1.overlay' as a resource overlay 701s ok 15 /resource/overlay 701s ok 16 /resource/digits 701s ok 17 /resource/has-children 701s # Start of uri tests 701s ok 18 /resource/uri/query-info 701s ok 19 /resource/uri/file 701s # End of uri tests 701s # End of resource tests 701s TAP version 14 701s # random seed: R02S454ed78cfbe5b92cb176653243c57d48 701s 1..2 701s # Start of io-channel tests 701s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/home 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/cache 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/system-config1:/tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/system-config2 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/config 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/system-data1:/tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/system-data2 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/data 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/state 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_io-channel_E8LGK3/io-channel/read-write/.dirs/runtime 701s # Line one 701s # 701s # Line two 701s # 701s # Line three 701s # 701s # /* Hello */ 701s # 701s # \x1234\x567890\x6666 701s # 701s # read 62 bytes, wrote 62 bytes 701s ok 1 /io-channel/read-write 701s # Start of read-line tests 701s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/home 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/cache 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/system-config1:/tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/system-config2 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/config 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/system-data1:/tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/system-data2 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/data 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/state 701s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_io-channel_E8LGK3/io-channel/read-line/embedded-nuls/.dirs/runtime 701s # /io-channel/read-line/embedded-nuls summary: Test that reading a line containing embedded nuls works when using non-standard line terminators. 701s ok 2 /io-channel/read-line/embedded-nuls 701s # End of read-line tests 701s # End of io-channel tests 701s # Running test: glib/rwlock.test 701s TAP version 14 701s # random seed: R02Sc88e906a96d272dcf2d13df8daca19d5 701s 1..8 701s # Start of thread tests 701s ok 1 /thread/rwlock1 701s ok 2 /thread/rwlock2 701s ok 3 /thread/rwlock3 701s ok 4 /thread/rwlock4 701s ok 5 /thread/rwlock5 701s ok 6 /thread/rwlock6 704s # Executing: glib/rwlock.test 706s ok 7 /thread/rwlock7 706s # slow test /thread/rwlock7 executed in 5.15 secs 706s ok - glib/rwlock.test 706s # Running test: glib/module-test-plugin.test 706s ok 8 /thread/rwlock8 706s # End of thread tests 706s TAP version 14 706s # random seed: R02S15ef14a62522b95b75081b10b0cb0456 706s 1..3 706s # Start of module tests 706s ok - glib/module-test-plugin.test 706s # Running test: glib/filter-streams.test 706s ok 1 /module/basics 706s # /module/invalid-libtool-archive summary: Test that opening an invalid .la file fails 706s ok 2 /module/invalid-libtool-archive 706s # /module/local-binding summary: Test that binding a library's symbols locally does not add them globally 706s ok 3 /module/local-binding 706s # End of module tests 706s TAP version 14 706s # random seed: R02S40d2f67612d0356684a6c8850d6d06dc 706s 1..4 706s # Start of filter-stream tests 706s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=568394 706s ok 1 /filter-stream/input 706s ok 2 /filter-stream/output 706s ok 3 /filter-stream/async-input 706s ok - glib/filter-streams.test 706s # Running test: glib/union-info.test 706s ok - glib/union-info.test 706s # Running test: glib/performance.test 706s ok 4 /filter-stream/async-output 706s # End of filter-stream tests 706s TAP version 14 706s # random seed: R02S2ae53ab00b6554b90ca609023dc410e5 706s 1..2 706s # Start of union-info tests 706s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/home 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/cache 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/system-config1:/tmp/test_union-info_0X03J3/union-info/basic/.dirs/system-config2 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/config 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/system-data1:/tmp/test_union-info_0X03J3/union-info/basic/.dirs/system-data2 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/data 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/state 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_union-info_0X03J3/union-info/basic/.dirs/runtime 706s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 706s # /union-info/basic summary: Test basic properties of GIUnionInfo 706s ok 1 /union-info/basic 706s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/home 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/cache 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/system-config1:/tmp/test_union-info_0X03J3/union-info/methods/.dirs/system-config2 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/config 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/system-data1:/tmp/test_union-info_0X03J3/union-info/methods/.dirs/system-data2 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/data 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/state 706s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_union-info_0X03J3/union-info/methods/.dirs/runtime 706s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 706s # /union-info/methods summary: Test retrieving methods from GIUnionInfo 706s ok 2 /union-info/methods 706s # End of union-info tests 709s # Executing: glib/performance.test 714s # Executing: glib/performance.test 716s simple-construction: Millions of constructed objects per second: 6.829 718s simple-construction1: Millions of constructed objects per second: 56.547 719s # Executing: glib/performance.test 724s complex-construction: Millions of constructed objects per second: 3.896 724s # Executing: glib/performance.test 729s # Executing: glib/performance.test 738s # Executing: glib/performance.test 738s complex-construction1: Millions of constructed objects per second: 4.798 738s complex-construction2: Millions of constructed objects per second: 5.202 739s # Executing: glib/performance.test 740s finalization: Millions of finalized objects per second: 1.071 742s type-check: Million type checks per second: 14.28 743s emit-unhandled: Emissions per second: 1036605 744s # Executing: glib/performance.test 745s emit-unhandled-empty: Emissions per second: 8677521 746s emit-unhandled-generic: Emissions per second: 1171817 747s emit-unhandled-generic-empty: Emissions per second: 8725616 749s emit-unhandled-args: Emissions per second: 1044713 749s # Executing: glib/performance.test 750s emit-handled: Emissions per second: 756462 752s emit-handled-empty: Emissions per second: 745933 753s emit-handled-generic: Emissions per second: 756082 754s # Executing: glib/performance.test 754s emit-handled-generic-empty: Emissions per second: 1145564 756s emit-handled-args: Emissions per second: 755247 757s notify-unhandled: Notify (unhandled) per second: 9122604 759s notify-by-pspec-unhandled: Notify (unhandled) per second: 45100026 759s # Executing: glib/performance.test 760s notify-handled: Notify per second: 492840 761s notify-by-pspec-handled: Notify per second: 521997 763s property-set: Property set per second: 6060152 764s # Executing: glib/performance.test 764s property-set-signaled: Property set per second: 1520391 765s property-get: Property get per second: 6778861 767s refcount: Million refs+unref per second: 6.06 769s refcount-1: Million refs+unref per second: 14.06 769s # Executing: glib/performance.test 770s ok - glib/performance.test 770s refcount-toggle: Million refs+unref per second: 12.15 770s # Running test: glib/inet-address.test 770s TAP version 14 770s # random seed: R02S2100099ede1aeb08c2b668e576403abe 770s 1..11 770s # Start of inet-address tests 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string ::1::2 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string 2001:1:2:3:4:5:6:7] 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string [2001:1:2:3:4:5:6:7 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string [2001:1:2:3:4:5:6:7] 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string [2001:1:2:3:4:5:6:7]:80 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string 0:1:2:3:4:5:6:7:8:9 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string ::FFFFFFF 770s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string 204.152.189.116:80 770s ok 1 /inet-address/parse 770s ok 2 /inet-address/any 770s ok 3 /inet-address/loopback 770s ok 4 /inet-address/bytes 770s ok 5 /inet-address/property 770s # End of inet-address tests 770s ok - glib/inet-address.test 770s # Running test: glib/atomic-c-11.test 770s # Start of socket-address tests 770s ok 6 /socket-address/basic 770s ok 7 /socket-address/to-string 770s # End of socket-address tests 770s # Start of address-mask tests 770s ok 8 /address-mask/parse 770s ok 9 /address-mask/property 770s ok 10 /address-mask/equal 770s ok 11 /address-mask/match 770s # End of address-mask tests 770s TAP version 14 770s # random seed: R02Se2672cc2d9ddffd63d98bb9beecfe45a 770s 1..2 770s # Start of atomic tests 770s ok 1 /atomic/types 770s ok 2 /atomic/threaded 770s # End of atomic tests 770s ok - glib/atomic-c-11.test 770s # Running test: glib/uri.test 770s TAP version 14 770s # random seed: R02S959e3d5e55b77ae3dc8f62ae5a370de5 770s 1..24 770s # Start of uri tests 770s ok 1 /uri/file-to-uri 770s ok 2 /uri/file-from-uri 770s ok 3 /uri/file-roundtrip 770s ok 4 /uri/list 770s ok - glib/uri.test 770s # Test 0: %2Babc %4F 770s # Test 1: %2Babc %4F 770s # Test 2: %00abc %4F 770s # Test 3: /cursors/none.png 770s # Test 4: /cursors%2fbad-subdir/none.png 770s # Test 5: %0 770s # Test 6: %ra 770s # Test 7: %2r 770s # Test 8: Timm Bäder 770s # Test 9: (null) 770s ok 5 /uri/unescape-string 770s ok 6 /uri/unescape-segment 770s # Test 0: abcdefgABCDEFG._~ 770s # Test 1: :+ \\?# 770s # Test 2: a+b:c 770s # Test 3: a+b:c\303\234 770s # Test 4: \374;\322 770s # Test 5: \303\261\303( 770s ok 7 /uri/escape-string 770s ok 8 /uri/escape-bytes 770s ok 9 /uri/scheme 770s ok 10 /uri/build 770s ok 11 /uri/split 770s ok 12 /uri/is_valid 770s ok 13 /uri/to-string 770s ok 14 /uri/join 770s # /uri/join-split-round-trip summary: Test that joining different URI components survives a round trip 770s # Combination 0 770s # Combination 1 770s # Combination 2 770s # Combination 3 770s # Combination 4 770s # Combination 5 770s # Combination 6 770s # Combination 7 770s # Combination 8 770s # Combination 9 770s # Combination 10 770s # Combination 11 770s # Combination 12 770s # Combination 13 770s # Combination 14 770s # Combination 15 770s # Combination 16 770s # Combination 17 770s # Combination 18 770s # Combination 19 770s # Combination 20 770s # Combination 21 770s # Combination 22 770s # Combination 23 770s # Combination 24 770s # Combination 25 770s # Combination 26 770s # Combination 27 770s # Combination 28 770s # Combination 29 770s # Combination 30 770s # Combination 31 770s # Combination 32 770s # Combination 33 770s # Combination 34 770s # Combination 35 770s # Combination 36 770s # Combination 37 770s # Combination 38 770s # Combination 39 770s # Combination 40 770s # Combination 41 770s # Combination 42 770s # Combination 43 770s # Combination 44 770s # Combination 45 770s # Combination 46 770s # Combination 47 770s # Combination 48 770s # Combination 49 770s # Combination 50 770s # Combination 51 770s # Combination 52 770s # Combination 53 770s # Combination 54 770s # Combination 55 770s # Combination 56 770s # Combination 57 770s # Combination 58 770s # Combination 59 770s # Combination 60 770s # Combination 61 770s # Combination 62 770s # Combination 63 770s # Combination 64 770s # Combination 65 770s # Combination 66 770s # Combination 67 770s # Combination 68 770s # Combination 69 770s # Combination 70 770s # Combination 71 770s # Combination 72 770s # Combination 73 770s # Combination 74 770s # Combination 75 770s # Combination 76 770s # Combination 77 770s # Combination 78 770s # Combination 79 770s # Combination 80 770s # Combination 81 770s # Combination 82 770s # Combination 83 770s # Combination 84 770s # Combination 85 770s # Combination 86 770s # Combination 87 770s # Combination 88 770s # Combination 89 770s # Combination 90 770s # Combination 91 770s # Combination 92 770s # Combination 93 770s # Combination 94 770s # Combination 95 770s # Combination 96 770s # Combination 97 770s # Combination 98 770s # Combination 99 770s # Combination 100 770s # Combination 101 770s # Combination 102 770s # Combination 103 770s # Combination 104 770s # Combination 105 770s # Combination 106 770s # Combination 107 770s # Combination 108 770s # Combination 109 770s # Combination 110 770s # Combination 111 770s # Combination 112 770s # Combination 113 770s # Combination 114 770s # Combination 115 770s # Combination 116 770s # Combination 117 770s # Combination 118 770s # Combination 119 770s # Combination 120 770s # Combination 121 770s # Combination 122 770s # Combination 123 770s # Combination 124 770s # Combination 125 770s # Combination 126 770s # Combination 127 770s # Combination 128 770s # Combination 129 770s # Combination 130 770s # Combination 131 770s # Combination 132 770s # Combination 133 770s # Combination 134 770s # Combination 135 770s # Combination 136 770s # Combination 137 770s # Combination 138 770s # Combination 139 770s # Combination 140 770s # Combination 141 770s # Combination 142 770s # Combination 143 770s # Combination 144 770s # Combination 145 770s # Combination 146 770s # Combination 147 770s # Combination 148 770s # Combination 149 770s # Combination 150 770s # Combination 151 770s # Combination 152 770s # Combination 153 770s # Combination 154 770s # Combination 155 770s # Combination 156 770s # Combination 157 770s # Combination 158 770s # Combination 159 770s # Combination 160 770s # Combination 161 770s # Combination 162 770s # Combination 163 770s # Combination 164 770s # Combination 165 770s # Combination 166 770s # Combination 167 770s # Combination 168 770s # Combination 169 770s # Combination 170 770s # Combination 171 770s # Combination 172 770s # Combination 173 770s # Combination 174 770s # Combination 175 770s # Combination 176 770s # Combination 177 770s # Combination 178 770s # Combination 179 770s # Combination 180 770s # Combination 181 770s # Combination 182 770s # Combination 183 770s # Combination 184 770s # Combination 185 770s # Combination 186 770s # Combination 187 770s # Combination 188 770s # Combination 189 770s # Combination 190 770s # Combination 191 770s # Combination 192 770s # Combination 193 770s # Combination 194 770s # Combination 195 770s # Combination 196 770s # Combination 197 770s # Combination 198 770s # Combination 199 770s # Combination 200 770s # Combination 201 770s # Combination 202 770s # Combination 203 770s # Combination 204 770s # Combination 205 770s # Combination 206 770s # Combination 207 770s # Combination 208 770s # Combination 209 770s # Combination 210 770s # Combination 211 770s # Combination 212 770s # Combination 213 770s # Combination 214 770s # Combination 215 770s # Combination 216 770s # Combination 217 770s # Combination 218 770s # Combination 219 770s # Combination 220 770s # Combination 221 770s # Combination 222 770s # Combination 223 770s # Combination 224 770s # Combination 225 770s # Combination 226 770s # Combination 227 770s # Combination 228 770s # Combination 229 770s # Combination 230 770s # Combination 231 770s # Combination 232 770s # Combination 233 770s # Combination 234 770s # Combination 235 770s # Combination 236 770s # Combination 237 770s # Combination 238 770s # Combination 239 770s # Combination 240 770s # Combination 241 770s # Combination 242 770s # Combination 243 770s # Combination 244 770s # Combination 245 770s # Combination 246 770s # Combination 247 770s # Combination 248 770s # Combination 249 770s # Combination 250 770s # Combination 251 770s # Combination 252 770s # Combination 253 770s # Combination 254 770s # Combination 255 770s ok 15 /uri/join-split-round-trip 770s ok 16 /uri/normalize 770s # Start of unescape-bytes tests 770s # Test 0: %00%00 770s # Test 1: /cursors/none.png 770s # Test 2: /cursors%2fbad-subdir/none.png 770s # Test 3: %% 770s # Test 4: % 770s ok 17 /uri/unescape-bytes/nul-terminated 770s # Test 0: %00%00 770s # Test 1: /cursors/none.png 770s # Test 2: /cursors%2fbad-subdir/none.png 770s # Test 3: %% 770s # Test 4: % 770s ok 18 /uri/unescape-bytes/length 770s # End of unescape-bytes tests 770s # Start of parsing tests 770s # Test 0: foo: 770s # Test 1: file:/dev/null 770s # Test 2: file:///dev/null 770s # Test 3: ftp://user@host/path 770s # Test 4: ftp://user@host:9999/path 770s # Test 5: ftp://user:password@host/path 770s # Test 6: ftp://user:password@host:9999/path 770s # Test 7: ftp://user:password@host 770s # Test 8: http://us%65r@host 770s # Test 9: http://us%40r@host 770s # Test 10: http://us%3ar@host 770s # Test 11: http://us%2fr@host 770s # Test 12: http://us%3fr@host 770s # Test 13: http://host?query 770s # Test 14: http://host/path?query=http%3A%2F%2Fhost%2Fpath%3Fchildparam%3Dchildvalue¶m=value 770s # Test 15: http://control-chars/%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F 770s # Test 16: http://space/%20 770s # Test 17: http://delims/%3C%3E%23%25%22 770s # Test 18: http://unwise-chars/%7B%7D%7C%5C%5E%5B%5D%60 770s # Test 19: http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html 770s # Test 20: http://[1080:0:0:0:8:800:200C:417A]/index.html 770s # Test 21: http://[3ffe:2a00:100:7031::1] 770s # Test 22: http://[1080::8:800:200C:417A]/foo 770s # Test 23: http://[::192.9.5.5]/ipng 770s # Test 24: http://[::FFFF:129.144.52.38]:80/index.html 770s # Test 25: http://[2010:836B:4179::836B:4179] 770s # Test 26: http://host/path with spaces 770s # Test 27: http://host/path 770s # Test 28: http://host/path 770s # Test 29: http://host 770s # Test 30: http://host:999 770s # Test 31: http://host/pa 770s # th 770s # Test 32: http: 770s # //host/path 770s # Test 33: http:// host/path 770s # Test 34: http://host/path? 770s # Test 35: http://host/path# 770s # Test 36: http://host/path% 770s # Test 37: http://h%ost/path 770s # Test 38: http://host/path%% 770s # Test 39: http://host/path%%% 770s # Test 40: http://host/path%/x/ 770s # Test 41: http://host/path%0x/ 770s # Test 42: http://host/path%ax 770s # Test 43: http://host/päth/ 770s # Test 44: HTTP://////////////// 770s # Test 45: http://@host 770s # Test 46: http://:@host 770s # Test 47: scheme://foo%3Abar._webdav._tcp.local 770s # Test 48: http://example.com/.. 770s # Test 49: foo0://host/path 770s # Test 50: f0.o://host/path 770s # Test 51: http++://host/path 770s # Test 52: http-ish://host/path 770s # Test 53: http://[fe80::dead:beef%]/ 770s # Test 54: http://[fe80::dead:beef%em1]/ 770s # Test 55: http://[fe80::dead:beef%em1]/ 770s # Test 56: http://[fe80::dead:beef%25em1]/ 770s # Test 57: http://[fe80::dead:beef%25em1%20]/ 770s # Test 58: http://[fe80::dead:beef%25em%31]/ 770s # Test 59: http://[fe80::dead:beef%10]/ 770s # Test 60: http://[fe80::dead:beef%10]/ 770s # Test 61: http://[fe80::dead:beef%25]/ 770s # Test 62: http://[fe80::dead:beef%25]/ 770s # Test 63: http://[192.168.0.1%25em1]/ 770s # Test 64: http://[fe80::dead:beef%2em1]/ 770s # Test 65: http://[fe80::dead:beef%2em1]/ 770s # Test 66: http://[fe80::dead:beef%25em1%00]/ 770s # Test 67: http://[fe80::dead:beef%25em1%00]/ 770s # Test 68: http://xn--mixed-üp/ 770s # Test 69: data:./// 770s # Test 70: data:/.// 770s ok 19 /uri/parsing/absolute 770s ok 20 /uri/parsing/relative 770s # End of parsing tests 770s # Start of iter-params tests 770s # URI 0: p1=foo&p2=bar;p3=baz 770s # URI 1: p1=foo&p2=bar 770s # URI 2: p1=foo&&P1=bar 770s # URI 3: %00=foo 770s # URI 4: p1=%00 770s # URI 5: p1=foo&p1=bar 770s # URI 6: p1=foo&P1=bar 770s # URI 7: =% 770s # URI 8: = 770s # URI 9: foo 770s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 770s ok 21 /uri/iter-params/nul-terminated 770s # URI 0: p1=foo&p2=bar;p3=baz 770s # URI 1: p1=foo&p2=bar 770s # URI 2: p1=foo&&P1=bar 770s # URI 3: %00=foo 770s # URI 4: p1=%00 770s # URI 5: p1=foo&p1=bar 770s # URI 6: p1=foo&P1=bar 770s # URI 7: =% 770s # URI 8: = 770s # URI 9: foo 770s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 770s ok 22 /uri/iter-params/length 770s # End of iter-params tests 770s # Start of parse-params tests 770s # URI 0: p1=foo&p2=bar;p3=baz 770s # URI 1: p1=foo&p2=bar 770s # URI 2: p1=foo&&P1=bar 770s # URI 3: %00=foo 770s # URI 4: p1=%00 770s # URI 5: p1=foo&p1=bar 770s # URI 6: p1=foo&P1=bar 770s # URI 7: =% 770s # URI 8: = 770s # URI 9: foo 770s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 770s ok 23 /uri/parse-params/nul-terminated 770s # URI 0: p1=foo&p2=bar;p3=baz 770s # URI 1: p1=foo&p2=bar 770s # URI 2: p1=foo&&P1=bar 770s # URI 3: %00=foo 770s # URI 4: p1=%00 770s # URI 5: p1=foo&p1=bar 770s # URI 6: p1=foo&P1=bar 770s # URI 7: =% 770s # URI 8: = 770s # URI 9: foo 770s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 770s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 770s ok 24 /uri/parse-params/length 770s # End of parse-params tests 770s # End of uri tests 770s # Running test: glib/dbus-appinfo.test 770s TAP version 14 770s # random seed: R02S682e611db3df4f119520f152233bd752 770s 1..7 770s # Start of appinfo tests 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/runtime 770s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 770s ok 1 /appinfo/dbusappinfo 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/runtime 770s # /appinfo/flatpak-doc-export summary: Test that files launched via Flatpak apps are made available via the document portal. 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Documents 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/dbusappinfo/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/config 770s # on_flatpak_open received file '/document-portal/document-id/org.gtk.test.dbusappinfo.flatpak.desktop' 770s # fake-document-portal cancelled 770s ok 2 /appinfo/flatpak-doc-export 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/runtime 770s # /appinfo/flatpak-missing-doc-export summary: Test that files launched via Flatpak apps are made available via the document portal. 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Documents 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-doc-export/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/config 770s # on_flatpak_open received file '/hopefully/an/invalid/path.desktop' 770s # fake-document-portal cancelled 770s ok 3 /appinfo/flatpak-missing-doc-export 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/runtime 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Desktop 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/flatpak-missing-doc-export/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/config 770s # Got open file request for file:///usr/libexec/installed-tests/glib/org.gtk.test.dbusappinfo.flatpak.desktop 770s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_5/t 770s # Response emitted 770s # fake-desktop-portal cancelled 770s ok 4 /appinfo/portal-open-file 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/runtime 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Desktop 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/config 770s # Got open file request for http://example.com 770s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_7/t 770s # Response emitted 770s # fake-desktop-portal cancelled 770s ok 5 /appinfo/portal-open-uri 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/runtime 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Desktop 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/config 770s # Got open file request for file:///usr/libexec/installed-tests/glib/org.gtk.test.dbusappinfo.flatpak.desktop 770s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_9/gio728764340 770s # Response emitted 770s # fake-desktop-portal cancelled 770s ok 6 /appinfo/portal-open-file-async 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/system-config1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/system-data1:/tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/runtime 770s # Acquired a message bus connection 770s # Acquired the name org.freedesktop.portal.Desktop 770s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-file-async/.dirs/config to /tmp/test_dbus-appinfo_W1UPK3/appinfo/portal-open-uri-async/.dirs/config 770s # Got open file request for http://example.com 770s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_11/gio85161438 770s # Response emitted 770s # fake-desktop-portal cancelled 770s ok - glib/dbus-appinfo.test 770s ok 7 /appinfo/portal-open-uri-async 770s # End of appinfo tests 770s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 770s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 770s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 770s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 770s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 770s # Running test: glib/scannerapi.test 770s TAP version 14 770s # random seed: R02S1bfa3cdfdc68e431b879c4b7acd22d5e 770s 1..8 770s # Start of scanner tests 770s ok 1 /scanner/warn 770s ok 2 /scanner/error 770s ok 3 /scanner/symbols 770s ok 4 /scanner/tokens 770s ok 5 /scanner/multiline-comment 770s ok 6 /scanner/int-to-float 770s ok 7 /scanner/fd-input 770s # Start of fd-input tests 770s ok 8 /scanner/fd-input/rewind 770s # End of fd-input tests 770s # End of scanner tests 770s ok - glib/scannerapi.test 770s # Running test: glib/testfilemonitor.test 770s ok - glib/testfilemonitor.test 770s # Running test: glib/option-context.test 770s TAP version 14 770s # random seed: R02S24a2359927206bd24ee065ebd4b55b9b 770s 1..8 770s # Start of monitor tests 770s ok 1 /monitor/atomic-replace # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s ok 2 /monitor/file-changes # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s ok 3 /monitor/dir-monitor # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s ok 4 /monitor/dir-not-existent # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s ok 5 /monitor/cross-dir-moves # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s ok 6 /monitor/finalize-in-callback # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s # /monitor/root summary: Test that GFileMonitor can monitor the root directory. 770s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3241 770s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 770s ok 7 /monitor/root # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s # Start of file tests 770s ok 8 /monitor/file/hard-links # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 770s # End of file tests 770s # End of monitor tests 770s TAP version 14 770s # random seed: R02Sa62a8fd872c17e6e765a84a99716a2ba 770s 1..61 770s # Start of option tests 770s ok 1 /option/basic 770s ok 2 /option/translate 770s ok 3 /option/strict-posix 770s # Testing command: program --double abc 770s # Testing command: program --double 2e309 770s # Testing command: program --int abc 770s # Testing command: program --int 99999999999999999999999999999999999 770s # Testing command: program --int64 abc 770s # Testing command: program --int64 99999999999999999999999999999999999 770s ok 4 /option/parsing-errors 770s # Start of help tests 770s ok 5 /option/help/options 770s ok 6 /option/help/no-options 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=697652 770s ok 7 /option/help/no-help-options 770s # Usage: 770s # /usr/libexec/installed-tests/glib/option-context [OPTION…] blabla 770s # 770s # Summary 770s # 770s # Help Options: 770s # -h, --help Show help options 770s # 770s # Application Options: 770s # -t, --test=Argument to use in test (deprecated) Test tests 770s # --test2 Tests also 770s # 770s # Description 770s # 770s ok 8 /option/help/deprecated 770s ok 9 /option/help/main-get_help-format 770s ok 10 /option/help/group-get_help-format 770s # End of help tests 770s # Start of group tests 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=504142 770s ok 11 /option/group/captions 770s ok 12 /option/group/main 770s ok 13 /option/group/error-hook 770s ok 14 /option/group/parse 770s # Start of captions tests 770s ok - glib/option-context.test 770s # Start of subprocess tests 770s # End of subprocess tests 770s # End of captions tests 770s # End of group tests 770s # Start of restoration tests 770s ok 15 /option/restoration/int 770s ok 16 /option/restoration/string 770s ok 17 /option/restoration/boolean 770s # End of restoration tests 770s # Start of arg tests 770s ok 18 /option/arg/reverse-string 770s ok 19 /option/arg/optional-int 770s # Start of repetition tests 770s ok 20 /option/arg/repetition/int 770s ok 21 /option/arg/repetition/string 770s ok 22 /option/arg/repetition/filename 770s ok 23 /option/arg/repetition/double 770s ok 24 /option/arg/repetition/locale 770s ok 25 /option/arg/repetition/int64 770s # End of repetition tests 770s # Start of array tests 770s ok 26 /option/arg/array/string 770s # End of array tests 770s # Start of callback tests 770s ok 27 /option/arg/callback/string 770s ok 28 /option/arg/callback/count 770s ok 29 /option/arg/callback/optional1 770s ok 30 /option/arg/callback/optional2 770s ok 31 /option/arg/callback/optional3 770s ok 32 /option/arg/callback/optional4 770s ok 33 /option/arg/callback/optional5 770s ok 34 /option/arg/callback/optional6 770s ok 35 /option/arg/callback/optional7 770s ok 36 /option/arg/callback/optional8 770s # End of callback tests 770s # Start of remaining tests 770s ok 37 /option/arg/remaining/callback 770s ok 38 /option/arg/remaining/callback-false 770s ok 39 /option/arg/remaining/non-option 770s ok 40 /option/arg/remaining/separator 770s ok 41 /option/arg/remaining/array 770s # End of remaining tests 770s # Start of ignore tests 770s ok 42 /option/arg/ignore/long 770s ok 43 /option/arg/ignore/short 770s ok 44 /option/arg/ignore/arg 770s # End of ignore tests 770s # Start of rest tests 770s ok 45 /option/arg/rest/non-option 770s ok 46 /option/arg/rest/separator1 770s ok 47 /option/arg/rest/separator2 770s ok 48 /option/arg/rest/separator3 770s ok 49 /option/arg/rest/separator4 770s ok 50 /option/arg/rest/separator5 770s # End of rest tests 770s # End of arg tests 770s # Start of context tests 770s ok 51 /option/context/add 770s ok 52 /option/context/empty2 770s ok 53 /option/context/empty3 770s # End of context tests 770s # Start of bug tests 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=166609 770s ok 54 /option/bug/unknown-short 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=168008 770s ok 55 /option/bug/lonely-dash 770s ok 56 /option/bug/triple-dash 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=305576 770s ok 57 /option/bug/missing-arg 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=577638 770s ok 58 /option/bug/dash-arg 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=729563 770s ok 59 /option/bug/short-remaining 770s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=646926 770s ok 60 /option/bug/double-free 770s ok 61 /option/bug/double-zero 770s # End of bug tests 770s # End of option tests 770s # Running test: glib/contexts.test 770s TAP version 14 770s # random seed: R02Sdfe8025159fbb2dd46752afe1f15fac5 770s 1..5 770s # Start of gio tests 770s # Start of contexts tests 770s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 770s ok 1 /gio/contexts/thread-independence 770s ok 2 /gio/contexts/context-independence 770s # Start of context-specific tests 770s ok 3 /gio/contexts/context-specific/identity 770s ok 4 /gio/contexts/context-specific/emit 770s ok 5 /gio/contexts/context-specific/emit-and-unref 770s # End of context-specific tests 770s # End of contexts tests 770s # End of gio tests 770s ok - glib/contexts.test 770s # Running test: glib/flags.test 770s TAP version 14 770s # random seed: R02S845a6e588ed28c4539e40513ce74105b 770s 1..1 770s # Start of gobject tests 770s # Start of flags tests 770s ok 1 /gobject/flags/validate 770s # End of flags tests 770s # End of gobject tests 770s ok - glib/flags.test 770s # Running test: glib/gdbus-connection-slow.test 770s TAP version 14 770s # random seed: R02S68fe6fe8b2973571037d8e0c5fbe240c 770s 1..2 770s # Start of gdbus tests 770s # Start of connection tests 770s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/home 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/cache 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/system-config1:/tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/system-config2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/config 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/system-data1:/tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/system-data2 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/data 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/state 770s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/flush/.dirs/runtime 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s ok 1 /gdbus/connection/flush 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/system-config1:/tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/system-data1:/tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-slow_9ZK8J3/gdbus/connection/large_message/.dirs/runtime 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 771s ok - glib/gdbus-connection-slow.test 771s # Running test: glib/list.test 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 771s ok 2 /gdbus/connection/large_message 771s # End of connection tests 771s # End of gdbus tests 771s TAP version 14 771s # random seed: R02Sb21d889fc59b3eb97b27af249624566e 771s 1..20 771s # Start of list tests 771s ok 1 /list/sort 771s ok 2 /list/sort-with-data 771s ok 3 /list/insert-before-link 771s ok 4 /list/insert-sorted 771s ok 5 /list/insert-sorted-with-data 771s ok 6 /list/reverse 771s ok 7 /list/nth 771s ok 8 /list/concat 771s ok 9 /list/remove 771s ok 10 /list/remove-all 771s ok 11 /list/first-last 771s ok 12 /list/insert 771s ok 13 /list/free-full 771s ok 14 /list/copy 771s ok 15 /list/copy-deep 771s ok 16 /list/delete-link 771s ok 17 /list/prepend 771s ok 18 /list/position 771s ok 19 /list/double-free 771s ok - glib/list.test 771s # Start of sort tests 771s ok 20 /list/sort/stable 771s # End of sort tests 771s # End of list tests 771s # Running test: glib/network-monitor-race.test 771s TAP version 14 771s # random seed: R02S68dcf37a25fbee9cba61ce28b45574ed 771s 1..1 771s # Start of network-monitor tests 771s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=793727 773s ok - glib/network-monitor-race.test 773s # Running test: glib/throws.test 773s ok 1 /network-monitor/create-in-thread 773s # slow test /network-monitor/create-in-thread executed in 2.24 secs 773s # End of network-monitor tests 773s TAP version 14 773s # random seed: R02S17b25832c32d32da9fe8431ce14bf543 773s 1..3 773s # Start of throws tests 773s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/home 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/cache 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/system-config1:/tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/system-config2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/config 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/system-data1:/tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/system-data2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/data 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/state 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_KJ6MK3/throws/invoke-gerror/.dirs/runtime 773s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 773s # /throws/invoke-gerror summary: Test invoking a function that throws a GError 773s ok 1 /throws/invoke-gerror 773s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/home 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/cache 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/system-config1:/tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/system-config2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/config 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/system-data1:/tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/system-data2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/data 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/state 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_KJ6MK3/throws/vfunc-can-throw-gerror/.dirs/runtime 773s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 773s # /throws/vfunc-can-throw-gerror summary: Test gi_callable_info_can_throw_gerror() on a vfunc 773s ok 2 /throws/vfunc-can-throw-gerror 773s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/home 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/cache 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/system-config1:/tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/system-config2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/config 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/system-data1:/tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/system-data2 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/data 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/state 773s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_KJ6MK3/throws/callback-can-throw-gerror/.dirs/runtime 773s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 773s # /throws/callback-can-throw-gerror summary: Test gi_callable_info_can_throw_gerror() on a callback 773s ok 3 /throws/callback-can-throw-gerror 773s # End of throws tests 773s ok - glib/throws.test 773s # Running test: glib/gobject-private.test 773s TAP version 14 773s # random seed: R02S449a4a00e96122585fd357c203137a73 773s 1..3 773s # Start of private tests 773s ok 1 /private/instance 773s ok 2 /private/derived-instance 773s ok 3 /private/mixed-derived-instance 773s # End of private tests 773s TAP version 14 773s # random seed: R02S8f4b9b809652e53ea355ce642248aa1e 773s 1..2 773s # Start of gtask tests 773s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 773s ok 1 /gtask/name 773s # Start of name tests 773s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 773s ok 2 /gtask/name/macro-wrapper 773s # End of name tests 773s # End of gtask tests 773s TAP version 14 773s # random seed: R02S242d68e779af96cee1e8dddac6cd3ad2 773s 1..72 773s # Start of network-address tests 773s ok 1 /network-address/basic 773s ok 2 /network-address/scope-id 773s ok 3 /network-address/uri-scope-id 773s ok 4 /network-address/to-string 773s # Start of parse-host tests 773s ok 5 /network-address/parse-host/0 773s ok 6 /network-address/parse-host/1 773s ok 7 /network-address/parse-host/2 773s ok 8 /network-address/parse-host/3 773s ok 9 /network-address/parse-host/4 773s ok 10 /network-address/parse-host/5 773s ok 11 /network-address/parse-host/6 773s ok 12 /network-address/parse-host/7 773s ok 13 /network-address/parse-host/8 773s ok 14 /network-address/parse-host/9 773s ok 15 /network-address/parse-host/10 773s ok 16 /network-address/parse-host/11 773s ok 17 /network-address/parse-host/12 773s ok 18 /network-address/parse-host/13 773s # End of parse-host tests 773s # Start of parse-uri tests 773s ok 19 /network-address/parse-uri/0 773s ok 20 /network-address/parse-uri/1 773s ok 21 /network-address/parse-uri/2 773s ok 22 /network-address/parse-uri/3 773s ok 23 /network-address/parse-uri/4 773s ok 24 /network-address/parse-uri/5 773s ok 25 /network-address/parse-uri/6 773s ok 26 /network-address/parse-uri/7 773s ok 27 /network-address/parse-uri/8 773s ok 28 /network-address/parse-uri/9 773s # End of parse-uri tests 773s # Start of resolve-address tests 773s # Input: 192.168.1.2 773s ok 29 /network-address/resolve-address/0 773s # Input: fe80::42 773s ok 30 /network-address/resolve-address/1 773s # Input: 192.168.1.2:80 773s ok 31 /network-address/resolve-address/2 773s ok - glib/gobject-private.test 773s # Running test: glib/cxx-03.test 773s ok - glib/cxx-03.test 773s # Running test: glib/network-address.test 773s # Input: [fe80::42] 773s ok 32 /network-address/resolve-address/3 773s # Input: [fe80::42]:80 773s ok 33 /network-address/resolve-address/4 773s # Input: 192.168.258 773s ok 34 /network-address/resolve-address/5 773s # Input: 192.11010306 773s ok 35 /network-address/resolve-address/6 773s # Input: 3232235778 773s ok 36 /network-address/resolve-address/7 773s # Input: 0300.0250.0001.0001 773s ok 37 /network-address/resolve-address/8 773s # Input: 0xC0.0xA8.0x01.0x02 773s ok 38 /network-address/resolve-address/9 773s # Input: 0xc0.0xa8.0x01.0x02 773s ok 39 /network-address/resolve-address/10 773s # Input: 0xc0a80102 773s ok 40 /network-address/resolve-address/11 773s # End of resolve-address tests 773s # Start of loopback tests 773s ok 41 /network-address/loopback/basic 773s ok 42 /network-address/loopback/sync 773s ok 43 /network-address/loopback/async 773s # End of loopback tests 773s # Start of localhost tests 773s ok 44 /network-address/localhost/async 773s ok 45 /network-address/localhost/sync 773s # End of localhost tests 773s # Start of happy-eyeballs tests 773s ok 46 /network-address/happy-eyeballs/basic 773s ok 47 /network-address/happy-eyeballs/parallel 773s ok 48 /network-address/happy-eyeballs/slow-ipv4 773s ok 49 /network-address/happy-eyeballs/slow-ipv6 773s ok 50 /network-address/happy-eyeballs/very-slow-ipv6 774s # Executing: glib/network-address.test 774s ok 51 /network-address/happy-eyeballs/slow-connection-and-ipv4 774s # slow test /network-address/happy-eyeballs/slow-connection-and-ipv4 executed in 0.80 secs 774s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 774s ok 52 /network-address/happy-eyeballs/ipv6-error-ipv4-first 774s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 774s ok 53 /network-address/happy-eyeballs/ipv6-error-ipv6-first 774s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/865 774s # /network-address/happy-eyeballs/ipv6-error-ipv4-very-slow summary: Ensure that we successfully return IPv4 results even when they come significantly later than an IPv6 failure. 774s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 774s ok 54 /network-address/happy-eyeballs/ipv6-error-ipv4-very-slow 774s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 774s ok 55 /network-address/happy-eyeballs/ipv4-error-ipv6-first 774s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 774s ok 56 /network-address/happy-eyeballs/ipv4-error-ipv4-first 774s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 774s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 774s ok 57 /network-address/happy-eyeballs/both-error 774s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 774s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 774s ok 58 /network-address/happy-eyeballs/both-error-delays-1 774s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 775s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 775s ok 59 /network-address/happy-eyeballs/both-error-delays-2 775s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 775s ok 60 /network-address/happy-eyeballs/both-error-delays-3 775s # End of happy-eyeballs tests 775s # End of network-address tests 775s # Start of gresolver tests 775s # Start of resolve-address tests 775s # Input: 192.168.1.2 775s ok 61 /gresolver/resolve-address/0 775s # Input: fe80::42 775s ok 62 /gresolver/resolve-address/1 775s # Input: 192.168.1.2:80 775s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string 192.168.1.2:80 775s # GLib-GIO-DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals 775s # GLib-GIO-DEBUG: Failed to initialize networkmanager (GNetworkMonitorNM) for gio-network-monitor: NetworkManager not running 775s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation netlink (GNetworkMonitorNetlink) for ‘gio-network-monitor’ 775s # Error: Error resolving “192.168.1.2:80”: Name or service not known 775s ok 63 /gresolver/resolve-address/2 775s # Input: [fe80::42] 775s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string [fe80::42] 775s # Error: Error resolving “[fe80::42]”: Name or service not known 775s ok 64 /gresolver/resolve-address/3 775s # Input: [fe80::42]:80 775s ok - glib/network-address.test 775s # Running test: glib/portal-support-flatpak-full.test 775s ok - glib/portal-support-flatpak-full.test 775s # Running test: glib/cxx-98.test 775s ok - glib/cxx-98.test 775s # Running test: glib/async-close-output-stream.test 775s ok - glib/async-close-output-stream.test 775s # Running test: glib/unicode-normalize.test 775s # GLib-GIO-DEBUG: getaddrinfo failed to resolve host string [fe80::42]:80 775s # Error: Error resolving “[fe80::42]:80”: Name or service not known 775s ok 65 /gresolver/resolve-address/4 775s # Input: 192.168.258 775s # Error: Error resolving “192.168.258”: Name or service not known 775s ok 66 /gresolver/resolve-address/5 775s # Input: 192.11010306 775s # Error: Error resolving “192.11010306”: Name or service not known 775s ok 67 /gresolver/resolve-address/6 775s # Input: 3232235778 775s # Error: Error resolving “3232235778”: Name or service not known 775s ok 68 /gresolver/resolve-address/7 775s # Input: 0300.0250.0001.0001 775s # Error: Error resolving “0300.0250.0001.0001”: Name or service not known 775s ok 69 /gresolver/resolve-address/8 775s # Input: 0xC0.0xA8.0x01.0x02 775s # Error: Error resolving “0xC0.0xA8.0x01.0x02”: Name or service not known 775s ok 70 /gresolver/resolve-address/9 775s # Input: 0xc0.0xa8.0x01.0x02 775s # Error: Error resolving “0xc0.0xa8.0x01.0x02”: Name or service not known 775s ok 71 /gresolver/resolve-address/10 775s # Input: 0xc0a80102 775s # Error: Error resolving “0xc0a80102”: Name or service not known 775s ok 72 /gresolver/resolve-address/11 775s # End of resolve-address tests 775s # End of gresolver tests 775s TAP version 14 775s # random seed: R02S190004a9171884973aa15b498ed99b1f 775s 1..1 775s # Start of portal-support tests 775s # Start of flatpak tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/system-config1:/tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/system-data1:/tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/runtime 775s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-full_4IP9J3/portal-support/flatpak/full/.dirs/runtime/.flatpak-info 775s ok 1 /portal-support/flatpak/full 775s # End of flatpak tests 775s # End of portal-support tests 775s TAP version 14 775s # random seed: R02Sc1263009469e8085cab810f14e796167 775s 1..2 775s # Start of gtask tests 775s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 775s ok 1 /gtask/name 775s # Start of name tests 775s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 775s ok 2 /gtask/name/macro-wrapper 775s # End of name tests 775s # End of gtask tests 775s TAP version 14 775s # random seed: R02S4a9f3d3f59e3595b12df36da68548349 775s 1..3 775s # Start of close-async tests 775s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 775s ok 1 /close-async/without-flush 775s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 775s ok 2 /close-async/with-flush 775s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 775s ok 3 /close-async/with-async-flush 775s # End of close-async tests 775s TAP version 14 775s # random seed: R02S5f3fd454e21ad488b99c887ea02251f7 775s 1..3 775s # Start of unicode tests 775s # Processing Part0 # Specific cases 775s # Processing Part1 # Character by character test 775s # Processing Part2 # Canonical Order Test 775s # Processing Part3 # PRI #29 Test 775s # Processing Part4 # Canonical closures (excluding Hangul) 775s # Processing Part5 # Chained primary composites 775s ok 1 /unicode/normalize 775s # Invalid UTF-8 vector 0 775s # Invalid UTF-8 vector 1 775s # Invalid UTF-8 vector 2 775s # Invalid UTF-8 vector 3 775s # Invalid UTF-8 vector 4 775s # Invalid UTF-8 vector 5 775s # Invalid UTF-8 vector 6 775s # Invalid UTF-8 vector 7 775s # Invalid UTF-8 vector 8 775s # Invalid UTF-8 vector 9 775s # Invalid UTF-8 vector 10 775s # Invalid UTF-8 vector 11 775s # Invalid UTF-8 vector 12 775s ok 2 /unicode/normalize-invalid 775s # Start of normalize tests 775s ok 3 /unicode/normalize/bad-length 775s # End of normalize tests 775s # End of unicode tests 775s ok - glib/unicode-normalize.test 775s # Running test: glib/tls-bindings.test 775s TAP version 14 775s # random seed: R02Sa14a4c9136aa5c15f97e7a92ca5c3b73 775s 1..2 775s # Start of tls-connection tests 775s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ‘gio-tls-backend’ 775s ok - glib/tls-bindings.test 775s # Running test: glib/g-file-info.test 775s ok 1 /tls-connection/get-tls-channel-binding 775s ok 2 /tls-connection/get-dtls-channel-binding 775s # End of tls-connection tests 775s TAP version 14 775s # random seed: R02S68e77acfec49b6e90534010b9c836c65 775s 1..6 775s # Start of g-file-info tests 775s ok 1 /g-file-info/test_g_file_info 775s # /g-file-info/xattrs summary: Test setting and getting escaped xattrs 775s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 775s ok 2 /g-file-info/xattrs 775s # /g-file-info/set-modified-date-time-precision summary: Test that g_file_info_set_modified_date_time() preserves microseconds 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3116 775s ok 3 /g-file-info/set-modified-date-time-precision 775s # Start of test_g_file_info tests 775s # /g-file-info/test_g_file_info/modification-time summary: Test that getting the modification time of a file works. 775s ok 4 /g-file-info/test_g_file_info/modification-time 775s # /g-file-info/test_g_file_info/access-time summary: Test that getting the access time of a file works. 775s ok 5 /g-file-info/test_g_file_info/access-time 775s ok - glib/g-file-info.test 775s # Running test: glib/override.test 775s ok - glib/override.test 775s # Running test: glib/hostutils.test 775s ok - glib/hostutils.test 775s # Running test: glib/gdbus-peer.test 775s # /g-file-info/test_g_file_info/creation-time summary: Test that getting the creation time of a file works. 775s ok 6 /g-file-info/test_g_file_info/creation-time 775s # End of test_g_file_info tests 775s # End of g-file-info tests 775s TAP version 14 775s # random seed: R02S6afeb7291c76aa1a377c4df4523baba1 775s 1..1 775s # Start of gobject tests 775s # *** emitting foo on a TestA instance 775s # Expecting: TestA::foo,TestI::foo 775s # Got: TestA::foo,TestI::foo 775s # *** emitting bar on a TestA instance 775s # Expecting: TestA::bar 775s # Got: TestA::bar 775s # *** emitting baz on a TestA instance 775s # Expecting: TestA::baz 775s # Got: TestA::baz 775s # *** emitting foo on a TestB instance 775s # Expecting: TestB::foo,TestA::foo,TestI::foo 775s # Got: TestB::foo,TestA::foo,TestI::foo 775s # *** emitting bar on a TestB instance 775s # Expecting: TestB::bar,TestA::bar 775s # Got: TestB::bar,TestA::bar 775s # *** emitting baz on a TestB instance 775s # Expecting: TestB::baz,TestA::baz 775s # Got: TestB::baz,TestA::baz 775s # *** emitting foo on a TestC instance 775s # Expecting: TestC::foo,TestB::foo,TestA::foo,TestI::foo 775s # Got: TestC::foo,TestB::foo,TestA::foo,TestI::foo 775s # *** emitting bar on a TestC instance 775s # Expecting: TestC::bar,TestB::bar,TestA::bar 775s # Got: TestC::bar,TestB::bar,TestA::bar 775s # *** emitting baz on a TestC instance 775s # Expecting: TestC::baz,TestB::baz,TestA::baz 775s # Got: TestC::baz,TestB::baz,TestA::baz 775s ok 1 /gobject/override 775s # End of gobject tests 775s TAP version 14 775s # random seed: R02Sca99dc7b3dc7b02a868c90755912f299 775s 1..4 775s # Start of hostutils tests 775s ok 1 /hostutils/hostname_is_non_ascii 775s ok 2 /hostutils/to_ascii 775s ok 3 /hostutils/to_unicode 775s ok 4 /hostutils/is_ip_addr 775s # End of hostutils tests 775s TAP version 14 775s # random seed: R02Sa0847f4a500b706a51ad7e77f5ce25a1 775s 1..12 775s # Start of gdbus tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/.dirs/runtime 775s # Testing with unix:dir address 775s # Testing with unix:tmpdir address 775s # Testing with unix:path address 775s ok 1 /gdbus/peer-to-peer 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/delayed-message-processing/.dirs/runtime 775s # Testing with unix:dir address 775s ok 2 /gdbus/delayed-message-processing 775s # slow test /gdbus/delayed-message-processing executed in 0.52 secs 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/nonce-tcp/.dirs/runtime 775s ok 3 /gdbus/nonce-tcp 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/tcp-anonymous/.dirs/runtime 775s ok 4 /gdbus/tcp-anonymous 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/credentials/.dirs/runtime 775s ok 5 /gdbus/credentials 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/codegen-peer-to-peer/.dirs/runtime 775s # Testing with unix:dir address 775s # Machine ID: 0afae47cbd734facacbe58c301ad6994 776s ok 6 /gdbus/codegen-peer-to-peer 776s # slow test /gdbus/codegen-peer-to-peer executed in 1.11 secs 776s # Start of peer-to-peer tests 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/signals/.dirs/runtime 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1620 776s # Testing with unix:dir address 776s ok 7 /gdbus/peer-to-peer/signals 776s # Start of invalid tests 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/server/.dirs/runtime 776s ok 8 /gdbus/peer-to-peer/invalid/server 776s # Start of conn tests 776s # Start of stream tests 776s ok - glib/gdbus-peer.test 776s # Running test: glib/actions.test 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/runtime 776s ok 9 /gdbus/peer-to-peer/invalid/conn/stream/async 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/runtime 776s ok 10 /gdbus/peer-to-peer/invalid/conn/stream/sync 776s # End of stream tests 776s # Start of addr tests 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/runtime 776s ok 11 /gdbus/peer-to-peer/invalid/conn/addr/async 776s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/home 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/cache 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/config 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data1:/tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data2 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/data 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/state 776s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_5T7IK3/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/runtime 776s ok 12 /gdbus/peer-to-peer/invalid/conn/addr/sync 776s # End of addr tests 776s # End of conn tests 776s # End of invalid tests 776s # End of peer-to-peer tests 776s # End of gdbus tests 776s TAP version 14 776s # random seed: R02S468114ee0b3bf9d4f55a7c53cc870482 776s 1..13 776s # Start of actions tests 776s ok 1 /actions/basic 776s ok 2 /actions/name 776s ok 3 /actions/simplegroup 776s ok 4 /actions/stateful 776s ok 5 /actions/default-activate 776s ok 6 /actions/entries 776s ok 7 /actions/parse-detailed 776s ok 8 /actions/property 776s ok 9 /actions/no-properties 776s # Start of dbus tests 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s ok 10 /actions/dbus/export 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 776s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s ok 11 /actions/dbus/threaded 779s # slow test /actions/dbus/threaded executed in 2.19 secs 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s ok 12 /actions/dbus/bug679509 779s # Start of export tests 779s # /actions/dbus/export/error-handling summary: Test that error handling of action group export failure works 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 779s ok 13 /actions/dbus/export/error-handling 779s # End of export tests 779s # End of dbus tests 779s ok - glib/actions.test 779s # Running test: glib/filenamecompleter.test 779s ok - glib/filenamecompleter.test 779s # Running test: glib/base64.test 779s # End of actions tests 779s TAP version 14 779s # random seed: R02Sb335d2a3b87648268673f4e022d76362 779s 1..1 779s # Start of filenamecompleter tests 779s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/home 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/cache 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/system-config1:/tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/system-config2 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/config 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/system-data1:/tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/system-data2 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/data 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/state 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_filenamecompleter_TP0JK3/filenamecompleter/basic/.dirs/runtime 779s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 779s ok 1 /filenamecompleter/basic 779s # End of filenamecompleter tests 779s TAP version 14 779s # random seed: R02S8a6eb54dd724b315207f9b4af9d58fd3 779s 1..28 779s # Start of base64 tests 779s ok 1 /base64/encode 779s ok 2 /base64/decode 779s ok 3 /base64/decode-inplace 779s ok 4 /base64/encode-decode 779s # Start of full tests 779s ok 5 /base64/full/1 779s ok 6 /base64/full/2 779s ok 7 /base64/full/3 779s ok 8 /base64/full/4 779s # End of full tests 779s # Start of encode tests 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698 779s ok 9 /base64/encode/empty 779s # Start of incremental tests 779s # Start of small-block tests 779s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 779s ok 10 /base64/encode/incremental/small-block/1 779s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 779s ok 11 /base64/encode/incremental/small-block/2 779s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 779s ok 12 /base64/encode/incremental/small-block/3 779s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 779s ok 13 /base64/encode/incremental/small-block/4 779s ok - glib/base64.test 779s # Running test: glib/qdata.test 779s # End of small-block tests 779s # End of incremental tests 779s # End of encode tests 779s # Start of incremental tests 779s # Start of nobreak tests 779s ok 14 /base64/incremental/nobreak/1 779s ok 15 /base64/incremental/nobreak/2 779s ok 16 /base64/incremental/nobreak/3 779s ok 17 /base64/incremental/nobreak/4-a 779s ok 18 /base64/incremental/nobreak/4-b 779s ok 19 /base64/incremental/nobreak/4-c 779s # End of nobreak tests 779s # Start of break tests 779s ok 20 /base64/incremental/break/1 779s ok 21 /base64/incremental/break/2 779s ok 22 /base64/incremental/break/3 779s # End of break tests 779s # Start of smallblock tests 779s ok 23 /base64/incremental/smallblock/1 779s ok 24 /base64/incremental/smallblock/2 779s ok 25 /base64/incremental/smallblock/3 779s ok 26 /base64/incremental/smallblock/4 779s # End of smallblock tests 779s # End of incremental tests 779s # Start of decode tests 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698 779s ok 27 /base64/decode/empty 779s # End of decode tests 779s # Start of encode-decode tests 779s # Vector 0: 779s # Vector 1: f 779s # Vector 2: fo 779s # Vector 3: foo 779s # Vector 4: foob 779s # Vector 5: fooba 779s # Vector 6: foobar 779s ok 28 /base64/encode-decode/rfc4648 779s # End of encode-decode tests 779s # End of base64 tests 779s TAP version 14 779s # random seed: R02S2a1de79e780085cb946dfec6cc384674 779s 1..2 779s # Start of qdata tests 779s # Executing: glib/qdata.test 779s ok 1 /qdata/threaded 779s ok 2 /qdata/dup 779s # End of qdata tests 779s ok - glib/qdata.test 779s # Running test: glib/object.test 779s TAP version 14 779s # random seed: R02S566a566116f7836a10b1359f7eb83358 779s 1..2 779s # Start of object tests 779s # Start of constructor tests 779s ok 1 /object/constructor/singleton 779s ok 2 /object/constructor/infanticide # SKIP skip tests that rely on debug-only warnings 779s # End of constructor tests 779s # End of object tests 779s ok - glib/object.test 779s # Running test: glib/dataset.test 779s TAP version 14 779s # random seed: R02Sd1cc96b301978b7527592a23580841a0 779s 1..15 779s # Start of quark tests 779s ok 1 /quark/basic 779s ok 2 /quark/string 779s # End of quark tests 779s # Start of dataset tests 779s ok 3 /dataset/basic 779s ok 4 /dataset/id 779s ok 5 /dataset/full 779s ok 6 /dataset/foreach 779s ok 7 /dataset/destroy 779s # End of dataset tests 779s # Start of datalist tests 779s ok 8 /datalist/id 779s ok 9 /datalist/recursive-clear 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2672 779s ok 10 /datalist/id-remove-multiple 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2672 779s ok 11 /datalist/id-remove-multiple-destroy-order 779s ok 12 /datalist/update-atomic 779s # Start of basic tests 779s ok 13 /datalist/basic/few 779s ok 14 /datalist/basic/many 779s # End of basic tests 779s # Start of id-remove-multiple tests 779s ok 15 /datalist/id-remove-multiple/resize 779s # End of id-remove-multiple tests 779s # End of datalist tests 779s ok - glib/dataset.test 779s # Running test: glib/refcount.test 779s TAP version 14 779s # random seed: R02S8a2fc9afbb7b117a7ee66c894d091e4d 779s 1..4 779s # Start of refcount tests 779s ok 1 /refcount/grefcount 779s ok 2 /refcount/gatomicrefcount 779s # Start of grefcount tests 779s ok 3 /refcount/grefcount/saturation 779s # End of grefcount tests 779s # Start of gatomicrefcount tests 779s ok 4 /refcount/gatomicrefcount/saturation 779s # End of gatomicrefcount tests 779s # End of refcount tests 779s ok - glib/refcount.test 779s # Running test: glib/utf8-private.test 779s ok - glib/utf8-private.test 779s # Running test: glib/appmonitor.test 779s TAP version 14 779s # random seed: R02S0d8197c6c0a6f276f337670160c466a9 779s 1..2 779s # Start of utf8 tests 779s ok 1 /utf8/utf8-to-utf16-make-valid 779s ok 2 /utf8/utf8-to-utf16-make-valid-backtrack 779s # End of utf8 tests 779s TAP version 14 779s # random seed: R02S959ecbfea6f53ab7c89defb75f335d2a 779s 1..1 779s # Start of monitor tests 779s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/home 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/cache 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/system-config1:/tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/system-config2 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/config 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/system-data1:/tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/system-data2 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/data 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/state 779s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/runtime 779s # Using data directory: /tmp/test_appmonitor_7OBNK3/monitor/app/.dirs/data 779s ok 1 /monitor/app 779s # End of monitor tests 779s ok - glib/appmonitor.test 779s # Running test: glib/markup-collect.test 779s ok - glib/markup-collect.test 779s # Running test: glib/cxx-20.test 779s ok - glib/cxx-20.test 779s # Running test: glib/completion.test 779s TAP version 14 779s # random seed: R02S6ec93421b770b61376d64feeded3fea5 779s 1..21 779s # Start of markup tests 779s # Start of collect tests 779s ok 1 /markup/collect/0 779s ok 2 /markup/collect/1 779s ok 3 /markup/collect/2 779s ok 4 /markup/collect/3 779s ok 5 /markup/collect/4 779s ok 6 /markup/collect/5 779s ok 7 /markup/collect/6 779s ok 8 /markup/collect/7 779s ok 9 /markup/collect/8 779s ok 10 /markup/collect/9 779s ok 11 /markup/collect/10 779s ok 12 /markup/collect/11 779s ok 13 /markup/collect/12 779s ok 14 /markup/collect/13 779s ok 15 /markup/collect/14 779s ok 16 /markup/collect/15 779s ok 17 /markup/collect/16 779s ok 18 /markup/collect/17 779s ok 19 /markup/collect/18 779s ok 20 /markup/collect/19 779s ok 21 /markup/collect/cleanup 779s # End of collect tests 779s # End of markup tests 779s TAP version 14 779s # random seed: R02Scbec469340f55b69090cd1541fb57097 779s 1..2 779s # Start of gtask tests 779s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 779s ok 1 /gtask/name 779s # Start of name tests 779s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 779s ok 2 /gtask/name/macro-wrapper 779s # End of name tests 779s # End of gtask tests 779s TAP version 14 779s # random seed: R02S99820004f34be6ecf15f9fdb5a7c7422 779s 1..1 779s # Start of completion tests 779s ok 1 /completion/test-completion 779s # End of completion tests 779s ok - glib/completion.test 779s # Running test: glib/socket-listener.test 779s TAP version 14 779s # random seed: R02Sc2c5c1153836465eb93a5f4144a1f854 779s 1..4 779s # Start of socket-listener tests 779s ok 1 /socket-listener/event-signal 779s # Start of accept tests 779s # /socket-listener/accept/multi-simultaneously summary: Test that accepting multiple pending connections on the same GMainContext iteration works 779s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3739 779s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 779s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x1830e899a550 and GSocketClientAsyncConnectData 0x1830e89959b0 779s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 779s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x1830e899cba0 and GSocketClientAsyncConnectData 0x1830e899c9f0 779s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 779s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x1830e899d3c0 and GSocketClientAsyncConnectData 0x1830e899d140 779s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 779s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x1830e899dc40 and GSocketClientAsyncConnectData 0x1830e899d9c0 779s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 779s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0x1830e899e460 and GSocketClientAsyncConnectData 0x1830e899e1e0 779s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 779s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 779s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x1830e89a0960 for GSocketClientAsyncConnectData 0x1830e89959b0 779s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 779s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 779s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x1830e89a2ad0 for GSocketClientAsyncConnectData 0x1830e899c9f0 779s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 779s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 779s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x1830e89a3280 for GSocketClientAsyncConnectData 0x1830e899d140 779s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 779s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 779s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x1830e89a3920 for GSocketClientAsyncConnectData 0x1830e899d9c0 779s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 779s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 779s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0x1830e89a0000 for GSocketClientAsyncConnectData 0x1830e899e1e0 779s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 779s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 779s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 779s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 779s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 779s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 779s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 779s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 779s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 779s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 779s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 779s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 779s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 779s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 779s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 779s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 779s ok 2 /socket-listener/accept/multi-simultaneously 779s # End of accept tests 779s # Start of add-any-inet-port tests 779s # /socket-listener/add-any-inet-port/listen-failures summary: Test that adding a listening port succeeds if either listening on IPv4 or IPv6 succeeds 779s # Test 0 779s # Test 1 779s # Test 2 779s # Test 3 779s # Test 4 779s # Test 5 779s # Test 6 779s # Test 7 779s # Test 8 779s # Test 9 779s # Test 10 779s ok 3 /socket-listener/add-any-inet-port/listen-failures 779s # End of add-any-inet-port tests 779s # Start of add-inet-port tests 779s # /socket-listener/add-inet-port/listen-failures summary: Test that adding a listening port succeeds if either listening on IPv4 or IPv6 succeeds 779s # Test 0 779s # Test 1 779s # Test 2 779s # Test 3 779s # Test 4 779s # Test 5 779s # Test 6 779s # Test 7 779s # Test 8 779s # Test 9 779s # Test 10 779s ok 4 /socket-listener/add-inet-port/listen-failures 779s # End of add-inet-port tests 779s # End of socket-listener tests 779s ok - glib/socket-listener.test 779s TAP version 14 779s # random seed: R02S1660b45ffd17017dd3187e47872b3176 779s 1..9 779s # Start of unicode tests 779s # Start of collate tests 779s ok 1 /unicode/collate/0 779s ok 2 /unicode/collate/1 779s ok 3 /unicode/collate/2 779s # End of collate tests 779s # Start of collate-key tests 779s ok 4 /unicode/collate-key/0 779s ok 5 /unicode/collate-key/1 779s ok 6 /unicode/collate-key/2 779s # End of collate-key tests 779s # Start of collate-filename tests 779s ok 7 /unicode/collate-filename/0 779s ok 8 /unicode/collate-filename/1 779s ok 9 /unicode/collate-filename/2 779s # End of collate-filename tests 779s # End of unicode tests 779s # Running test: glib/collate.test 779s ok - glib/collate.test 779s # Running test: glib/threadtests.test 779s TAP version 14 779s # random seed: R02S00bb29eccf7a854ebbf51612b90488ea 779s 1..5 779s # Start of GObject tests 779s ok 1 /GObject/threaded-object-init 780s ok 2 /GObject/threaded-weak-ref 780s # slow test /GObject/threaded-weak-ref executed in 0.74 secs 780s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2394 780s # /GObject/threaded-toggle-notify summary: Test that toggle reference notifications can be changed safely from another (the main) thread without causing the notifying thread to abort 780s ok - glib/threadtests.test 780s ok 3 /GObject/threaded-toggle-notify 780s ok 4 /GObject/threaded-g-pointer-bit-unlock-and-set 780s # Start of threaded-weak-ref tests 780s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 780s # /GObject/threaded-weak-ref/on-finalization summary: Test that a weak ref added by another thread during dispose of a GObject is cleared during finalisation. Use on_weak_ref_disposed() to synchronize the other thread with the dispose vfunc. 780s ok 5 /GObject/threaded-weak-ref/on-finalization 780s # End of threaded-weak-ref tests 780s # End of GObject tests 780s # Running test: glib/defaultiface.test 780s TAP version 14 780s ok - glib/defaultiface.test 780s # random seed: R02S48f384d13b3c2e27be906adf8755e495 780s 1..2 780s # Start of gobject tests 780s ok 1 /gobject/static-iface 780s ok 2 /gobject/dynamic-iface 780s # End of gobject tests 780s # Running test: glib/convert.test 780s TAP version 14 780s # random seed: R02Sfa9a64a0a982a08a84086d7c9dc1a607 780s 1..14 780s # Start of conversion tests 780s ok 1 /conversion/no-conv 780s ok 2 /conversion/iconv-state 780s ok - glib/convert.test 780s # Running test: glib/enums.test 780s ok - glib/enums.test 780s # Running test: glib/gsubprocess.test 780s ok 3 /conversion/illegal-sequence 780s ok 4 /conversion/byte-order 780s ok 5 /conversion/unicode 780s ok 6 /conversion/filename-utf8 780s ok 7 /conversion/filename-display 780s ok 8 /conversion/convert-embedded-nul 780s # Start of locale-to-utf8 tests 780s ok 9 /conversion/locale-to-utf8/embedded-nul 780s # Start of embedded-nul tests 780s # Start of subprocess tests 780s # End of subprocess tests 780s # End of embedded-nul tests 780s # End of locale-to-utf8 tests 780s # Start of locale-from-utf8 tests 780s ok 10 /conversion/locale-from-utf8/embedded-nul 780s # Start of embedded-nul tests 780s # Start of subprocess tests 780s # End of subprocess tests 780s # End of embedded-nul tests 780s # End of locale-from-utf8 tests 780s # Start of filename-to-utf8 tests 780s ok 11 /conversion/filename-to-utf8/embedded-nul 780s # Start of embedded-nul tests 780s # Start of subprocess tests 780s # End of subprocess tests 780s # End of embedded-nul tests 780s # End of filename-to-utf8 tests 780s # Start of filename-from-utf8 tests 780s ok 12 /conversion/filename-from-utf8/embedded-nul 780s # Start of embedded-nul tests 780s # Start of subprocess tests 780s # End of subprocess tests 780s # End of embedded-nul tests 780s # End of filename-from-utf8 tests 780s # Start of filename-from-uri tests 780s ok 13 /conversion/filename-from-uri/query-is-ignored 780s ok 14 /conversion/filename-from-uri/fragment-is-ignored 780s # End of filename-from-uri tests 780s # End of conversion tests 780s TAP version 14 780s # random seed: R02S073a6de4fc6e303d7b5c57d6460e8077 780s 1..4 780s # Start of enum tests 780s ok 1 /enum/basic 780s ok 2 /enum/define-type 780s # End of enum tests 780s # Start of flags tests 780s ok 3 /flags/basic 780s ok 4 /flags/define-type 780s # End of flags tests 780s TAP version 14 780s # random seed: R02S1879708544c12327bb7d5dfc38d2c5c5 780s 1..84 780s # Start of gsubprocess tests 780s ok 1 /gsubprocess/noop 780s ok 2 /gsubprocess/noop-all-to-null 780s ok 3 /gsubprocess/noop-no-wait 780s ok 4 /gsubprocess/noop-stdin-inherit 780s ok 5 /gsubprocess/search-path 780s ok 6 /gsubprocess/search-path-from-envp 784s # Executing: glib/gsubprocess.test 784s ok 7 /gsubprocess/signal 784s # slow test /gsubprocess/signal executed in 3.68 secs 784s ok 8 /gsubprocess/exit1 784s ok 9 /gsubprocess/echo1 784s ok 10 /gsubprocess/echo-merged 784s ok 11 /gsubprocess/cat-utf8 785s ok 12 /gsubprocess/cat-eof 785s # slow test /gsubprocess/cat-eof executed in 1.00 secs 788s ok 13 /gsubprocess/multi1 788s # slow test /gsubprocess/multi1 executed in 3.01 secs 788s ok 14 /gsubprocess/communicate 789s # Executing: glib/gsubprocess.test 791s ok 15 /gsubprocess/terminate 791s # slow test /gsubprocess/terminate executed in 2.98 secs 791s ok 16 /gsubprocess/fail-initialization 791s ok 17 /gsubprocess/env 791s ok 18 /gsubprocess/cwd 791s ok 19 /gsubprocess/launcher-close 791s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 791s ok 20 /gsubprocess/stdout-file 791s ok 21 /gsubprocess/stdout-fd 791s ok 22 /gsubprocess/child-setup 791s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 791s ok 23 /gsubprocess/launcher-environment 791s # Start of exit1 tests 791s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456 791s ok 24 /gsubprocess/exit1/cancel 791s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456 791s ok 25 /gsubprocess/exit1/cancel_in_cb 791s # End of exit1 tests 791s # Start of communicate tests 791s ok 26 /gsubprocess/communicate/cancelled 791s ok 27 /gsubprocess/communicate/async 791s ok 28 /gsubprocess/communicate/utf8 791s # hello world 791s ok 29 /gsubprocess/communicate/no-pipes 791s ok 30 /gsubprocess/communicate/separate-stderr 791s ok 31 /gsubprocess/communicate/stdout-only 791s # hello world 791s ok 32 /gsubprocess/communicate/stderr-only 791s ok 33 /gsubprocess/communicate/stdout-silence 791s ok 34 /gsubprocess/communicate/nothing 791s # Start of async tests 791s ok 35 /gsubprocess/communicate/async/cancelled 791s # hello world 791s ok 36 /gsubprocess/communicate/async/no-pipes 791s ok 37 /gsubprocess/communicate/async/separate-stderr 791s ok 38 /gsubprocess/communicate/async/stdout-only 791s # hello world 791s ok 39 /gsubprocess/communicate/async/stderr-only 791s ok 40 /gsubprocess/communicate/async/stdout-silence 791s # Start of cancelled tests 791s ok 41 /gsubprocess/communicate/async/cancelled/no-pipes 791s ok 42 /gsubprocess/communicate/async/cancelled/separate-stderr 791s ok 43 /gsubprocess/communicate/async/cancelled/stdout-only 791s ok 44 /gsubprocess/communicate/async/cancelled/stderr-only 791s ok 45 /gsubprocess/communicate/async/cancelled/stdout-silence 791s # End of cancelled tests 791s # End of async tests 791s # Start of utf8 tests 791s ok 46 /gsubprocess/communicate/utf8/cancelled 791s ok 47 /gsubprocess/communicate/utf8/async 791s # hello world 791s ok 48 /gsubprocess/communicate/utf8/no-pipes 791s ok 49 /gsubprocess/communicate/utf8/separate-stderr 791s ok 50 /gsubprocess/communicate/utf8/stdout-only 791s # hello world 791s ok 51 /gsubprocess/communicate/utf8/stderr-only 791s ok 52 /gsubprocess/communicate/utf8/stdout-silence 791s ok 53 /gsubprocess/communicate/utf8/invalid 791s # Start of async tests 791s ok 54 /gsubprocess/communicate/utf8/async/cancelled 791s # hello world 791s ok 55 /gsubprocess/communicate/utf8/async/no-pipes 791s ok 56 /gsubprocess/communicate/utf8/async/separate-stderr 791s ok 57 /gsubprocess/communicate/utf8/async/stdout-only 791s # hello world 791s ok 58 /gsubprocess/communicate/utf8/async/stderr-only 791s ok 59 /gsubprocess/communicate/utf8/async/stdout-silence 791s ok 60 /gsubprocess/communicate/utf8/async/invalid 791s # Start of cancelled tests 791s ok 61 /gsubprocess/communicate/utf8/async/cancelled/no-pipes 791s ok 62 /gsubprocess/communicate/utf8/async/cancelled/separate-stderr 791s ok 63 /gsubprocess/communicate/utf8/async/cancelled/stdout-only 791s ok 64 /gsubprocess/communicate/utf8/async/cancelled/stderr-only 791s ok 65 /gsubprocess/communicate/utf8/async/cancelled/stdout-silence 791s # End of cancelled tests 791s # End of async tests 791s # Start of cancelled tests 791s ok 66 /gsubprocess/communicate/utf8/cancelled/no-pipes 791s ok 67 /gsubprocess/communicate/utf8/cancelled/separate-stderr 791s ok 68 /gsubprocess/communicate/utf8/cancelled/stdout-only 791s ok 69 /gsubprocess/communicate/utf8/cancelled/stderr-only 791s ok 70 /gsubprocess/communicate/utf8/cancelled/stdout-silence 791s # End of cancelled tests 791s # End of utf8 tests 791s # Start of cancelled tests 791s ok 71 /gsubprocess/communicate/cancelled/no-pipes 791s ok 72 /gsubprocess/communicate/cancelled/separate-stderr 791s ok 73 /gsubprocess/communicate/cancelled/stdout-only 791s ok 74 /gsubprocess/communicate/cancelled/stderr-only 791s ok 75 /gsubprocess/communicate/cancelled/stdout-silence 791s # End of cancelled tests 791s # End of communicate tests 791s # Start of env tests 791s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 791s ok 76 /gsubprocess/env/inherit 791s # End of env tests 791s # Start of pass-fd tests 791s ok 77 /gsubprocess/pass-fd/basic 791s ok 78 /gsubprocess/pass-fd/empty-child-setup 791s ok 79 /gsubprocess/pass-fd/inherit-fds 791s # End of pass-fd tests 791s # Start of fd-conflation tests 791s ok 80 /gsubprocess/fd-conflation/basic 791s ok 81 /gsubprocess/fd-conflation/empty-child-setup 791s ok 82 /gsubprocess/fd-conflation/inherit-fds 791s ok 83 /gsubprocess/fd-conflation/child-err-report-fd 791s # End of fd-conflation tests 791s # Start of exit-status tests 791s # /gsubprocess/exit-status/trapped summary: Test that exit status is reported correctly for ptrace()d child processes 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3433 791s ok 84 /gsubprocess/exit-status/trapped 791s # End of exit-status tests 791s # End of gsubprocess tests 791s ok - glib/gsubprocess.test 791s # Running test: glib/utils-c-89.test 791s TAP version 14 791s # random seed: R02S4c35c5fa54751ffe31afefd0fcbe8280 791s 1..41 791s # Start of utils tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/language-names/.dirs/runtime 791s ok 1 /utils/language-names 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/locale-variants/.dirs/runtime 791s # Testing locale ‘en’ 791s # Testing locale ‘sr@latin’ 791s # Testing locale ‘fr_BE’ 791s # Testing locale ‘sr_SR@latin’ 791s # Testing locale ‘sr_SR@latin.UTF-8’ 791s # Testing locale ‘sr@latin_invalid’ 791s # Testing locale ‘sr.UTF-8@latin’ 791s # Testing locale ‘sr.UTF-8_latin’ 791s # Testing locale ‘sr.UTF-8@latin_invalid’ 791s ok 2 /utils/locale-variants 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/version/.dirs/runtime 791s ok 3 /utils/version 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/appname/.dirs/runtime 791s ok 4 /utils/appname 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/prgname-thread-safety/.dirs/runtime 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 791s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 791s ok 5 /utils/prgname-thread-safety 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/tmpdir/.dirs/runtime 791s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 791s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/tmpdir: No such file or directory 791s ok 6 /utils/tmpdir 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/basic_bits/.dirs/runtime 791s ok 7 /utils/basic_bits 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/bits/.dirs/runtime 791s ok 8 /utils/bits 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/swap/.dirs/runtime 791s ok 9 /utils/swap 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/find-program/.dirs/runtime 791s ok 10 /utils/find-program 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/find-program-for-path/.dirs/runtime 791s ok 11 /utils/find-program-for-path 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/debug/.dirs/runtime 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/debug: No such file or directory 791s ok 12 /utils/debug 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/codeset/.dirs/runtime 791s ok 13 /utils/codeset 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/codeset2/.dirs/runtime 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/codeset2: No such file or directory 791s ok 14 /utils/codeset2 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/console-charset/.dirs/runtime 791s ok 15 /utils/console-charset 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/gettext/.dirs/runtime 791s ok 16 /utils/gettext 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/username/.dirs/runtime 791s ok 17 /utils/username 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/realname/.dirs/runtime 791s ok 18 /utils/realname 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/hostname/.dirs/runtime 791s ok 19 /utils/hostname 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/os-info/.dirs/runtime 791s # NAME: Ubuntu 791s ok 20 /utils/os-info 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/.dirs/runtime 791s ok 21 /utils/clear-pointer 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer-cast/.dirs/runtime 791s ok 22 /utils/clear-pointer-cast 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/take-pointer/.dirs/runtime 791s ok 23 /utils/take-pointer 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-source/.dirs/runtime 791s ok 24 /utils/clear-source 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/misc-mem/.dirs/runtime 791s ok 25 /utils/misc-mem 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/.dirs/runtime 791s # /utils/aligned-mem summary: Aligned memory allocator 791s # Alignment must not be zero 791s # Alignment must be a power of two 791s # Alignment must be a multiple of sizeof(void*) 791s ok 26 /utils/aligned-mem 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/free-sized/.dirs/runtime 791s # /utils/free-sized summary: Check that g_free_sized() works 791s ok 27 /utils/free-sized 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/nullify/.dirs/runtime 791s ok 28 /utils/nullify 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/atexit/.dirs/runtime 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/atexit: No such file or directory 791s ok 29 /utils/atexit 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/check-setuid/.dirs/runtime 791s ok 30 /utils/check-setuid 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/int-limits/.dirs/runtime 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 791s ok 31 /utils/int-limits 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-list/.dirs/runtime 791s ok 32 /utils/clear-list 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-slist/.dirs/runtime 791s ok 33 /utils/clear-slist 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/steal-handle-id/.dirs/runtime 791s ok 34 /utils/steal-handle-id 791s # Start of user-special-dirs tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/desktop/.dirs/runtime 791s ok 35 /utils/user-special-dirs/desktop 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked/.dirs/runtime 791s # /utils/user-special-dirs/load-unlocked summary: Tests error and corner cases of user-dirs.dirs content. 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/4800 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/load-unlocked: No such file or directory 791s ok 36 /utils/user-special-dirs/load-unlocked 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks/.dirs/runtime 791s # /utils/user-special-dirs/reload-leaks summary: Tests that old user special dirs values are deliberately leaked on reload. 791s ok - glib/utils-c-89.test 791s Unable to clean up temporary directory /tmp/test_utils-c-89_IF8OK3/utils/user-special-dirs/reload-leaks: No such file or directory 791s ok 37 /utils/user-special-dirs/reload-leaks 791s # End of user-special-dirs tests 791s # Start of clear-pointer tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/clear-pointer/side-effects/.dirs/runtime 791s ok 38 /utils/clear-pointer/side-effects 791s # End of clear-pointer tests 791s # Start of aligned-mem tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/alignment/.dirs/runtime 791s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 791s ok 39 /utils/aligned-mem/alignment 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/zeroed/.dirs/runtime 791s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 791s ok 40 /utils/aligned-mem/zeroed 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/system-config1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/system-data1:/tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-89_IF8OK3/utils/aligned-mem/free-sized/.dirs/runtime 791s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 791s ok 41 /utils/aligned-mem/free-sized 791s # Start of subprocess tests 791s # End of subprocess tests 791s # End of aligned-mem tests 791s # End of utils tests 791s # Running test: glib/tree.test 791s TAP version 14 791s # random seed: R02Sa22d2c8a084f6901f81164baee64028a 791s 1..7 791s # Start of tree tests 791s ok 1 /tree/search 791s ok 2 /tree/remove 791s ok 3 /tree/destroy 791s ok 4 /tree/traverse 791s ok 5 /tree/insert 791s ok 6 /tree/bounds 791s ok 7 /tree/remove-all 791s # End of tree tests 791s ok - glib/tree.test 791s # Running test: glib/notify-init.test 791s ok - glib/notify-init.test 791s # Running test: glib/mapping.test 791s TAP version 14 791s # random seed: R02S4bee99f5897e9065b4992e0fbb3b80b8 791s 1..1 791s # Start of properties tests 791s # /properties/notify-in-init summary: Test that emitting notify with a handler already connected in test_object_init() works 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2665 791s ok 1 /properties/notify-in-init 791s # End of properties tests 791s TAP version 14 791s # random seed: R02S81b763b6392ee1776bae9e2bb4b7c6c2 791s 1..3 791s # Start of mapping tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/system-config1:/tmp/test_mapping_50S6J3/mapping/flags/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/system-data1:/tmp/test_mapping_50S6J3/mapping/flags/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_50S6J3/mapping/flags/.dirs/runtime 791s # test_mapping: ok 791s ok 1 /mapping/flags 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_50S6J3/mapping/private/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_50S6J3/mapping/private/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_50S6J3/mapping/private/.dirs/system-config1:/tmp/test_mapping_50S6J3/mapping/private/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_50S6J3/mapping/private/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_50S6J3/mapping/private/.dirs/system-data1:/tmp/test_mapping_50S6J3/mapping/private/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_50S6J3/mapping/private/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_50S6J3/mapping/private/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_50S6J3/mapping/private/.dirs/runtime 791s ok - glib/mapping.test 791s ok 2 /mapping/private 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/system-config1:/tmp/test_mapping_50S6J3/mapping/private-child/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/system-data1:/tmp/test_mapping_50S6J3/mapping/private-child/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_50S6J3/mapping/private-child/.dirs/runtime 791s # test_child_private: child spawned 791s # Subtest: /usr/libexec/installed-tests/glib/mapping 791s # random seed: R02Sb9d2ef4c85047f648c04430ec0549f3d 791s # test_child_private: received first child signal 791s # test_child_private: received parent signal 791s # Child exited with status 0 791s # test_child_private: received second child signal 791s ok 3 /mapping/private-child 791s # End of mapping tests 791s TAP version 14 791s # Running test: glib/unicode.test 791s # random seed: R02S4b248ec05ca06f1e11dbf95dc3e2653f 791s 1..39 791s # Start of unicode tests 791s ok 1 /unicode/alnum 791s ok 2 /unicode/alpha 791s ok 3 /unicode/break-type 791s ok 4 /unicode/canonical-decomposition 791s ok 5 /unicode/casefold 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s # Cannot set locale to lt_LT, skipping 791s ok 6 /unicode/casemap_and_casefold 791s ok 7 /unicode/cases 791s ok 8 /unicode/character-type 791s ok 9 /unicode/cntrl 791s ok 10 /unicode/combining-class 791s # Composing U+000041 and U+000042; expecting U+000000 791s # Composing U+000041 and U+000000; expecting U+000000 791s # Composing U+000066 and U+000069; expecting U+000000 791s # Composing U+000308 and U+000301; expecting U+000000 791s # Composing U+000f71 and U+000f72; expecting U+000000 791s # Composing U+00212b and U+000000; expecting U+000000 791s # Composing U+0000c5 and U+000000; expecting U+000000 791s # Composing U+002126 and U+000000; expecting U+000000 791s # Composing U+0003a9 and U+000000; expecting U+000000 791s # Composing U+000041 and U+00030a; expecting U+0000c5 791s # Composing U+00006f and U+000302; expecting U+0000f4 791s # Composing U+001e63 and U+000307; expecting U+001e69 791s # Composing U+000073 and U+000323; expecting U+001e63 791s # Composing U+000064 and U+000307; expecting U+001e0b 791s # Composing U+000064 and U+000323; expecting U+001e0d 791s # Composing U+00d4cc and U+0011b6; expecting U+00d4db 791s # Composing U+001111 and U+001171; expecting U+00d4cc 791s # Composing U+00ce20 and U+0011b8; expecting U+00ce31 791s # Composing U+00110e and U+001173; expecting U+00ce20 791s # Composing U+001100 and U+001160; expecting U+000000 791s # Composing U+001100 and U+001177; expecting U+000000 791s # Composing U+00abff and U+0011b6; expecting U+000000 791s # Composing U+00d7a5 and U+0011b6; expecting U+000000 791s # Composing U+00ac01 and U+0011b6; expecting U+000000 791s # Composing U+00d4cc and U+0011a6; expecting U+000000 791s # Composing U+00d4cc and U+0011c4; expecting U+000000 791s # Composing U+01611e and U+01611e; expecting U+016121 791s # Composing U+01611e and U+01611f; expecting U+016123 791s # Composing U+0000f6 and U+000304; expecting U+00022b 791s # Composing U+000b47 and U+000b57; expecting U+000b4c 791s # Composing U+0000a0 and U+000b57; expecting U+000000 791s # Composing U+016e00 and U+00030a; expecting U+000000 791s # Composing U+00212b and U+016e00; expecting U+000000 791s # Composing U+001e63 and U+000306; expecting U+000000 791s # Composing U+001e63 and U+000304; expecting U+000000 791s # Composing U+001e63 and U+000b57; expecting U+000000 791s # Composing U+001e63 and U+000000; expecting U+000000 791s # Composing U+001e63 and U+0113c2; expecting U+000000 791s # Composing U+001f01 and U+0113c2; expecting U+000000 791s # Composing U+00006e and U+000302; expecting U+000000 791s # Composing U+001e63 and U+01611f; expecting U+000000 791s # Composing U+01138e and U+0113b8; expecting U+000000 791s # Composing U+01611e and U+000000; expecting U+000000 791s # Composing U+000000 and U+01611f; expecting U+000000 791s # Composing U+011390 and U+0113c2; expecting U+000000 791s ok 11 /unicode/compose 791s ok 12 /unicode/decompose 791s ok 13 /unicode/decompose-tail 791s ok 14 /unicode/defined 791s ok 15 /unicode/digit 791s ok 16 /unicode/digit-value 791s # Fully decomposing U+000041; expecting 1 codepoints 791s # Fully decomposing U+00fb01; expecting 1 codepoints 791s # Fully decomposing U+00212b; expecting 2 codepoints 791s # Fully decomposing U+002126; expecting 1 codepoints 791s # Fully decomposing U+000344; expecting 2 codepoints 791s # Fully decomposing U+000f73; expecting 2 codepoints 791s # Fully decomposing U+0000c5; expecting 2 codepoints 791s # Fully decomposing U+0000f4; expecting 2 codepoints 791s # Fully decomposing U+001e69; expecting 3 codepoints 791s # Fully decomposing U+001e63; expecting 2 codepoints 791s # Fully decomposing U+001e0b; expecting 2 codepoints 791s # Fully decomposing U+001e0d; expecting 2 codepoints 791s # Fully decomposing U+00d4db; expecting 3 codepoints 791s # Fully decomposing U+00d4cc; expecting 2 codepoints 791s # Fully decomposing U+00ce31; expecting 3 codepoints 791s # Fully decomposing U+00ce20; expecting 2 codepoints 791s ok 17 /unicode/fully-decompose-canonical 791s ok 18 /unicode/fully-decompose-len 791s ok 19 /unicode/normalization 791s ok 20 /unicode/graph 791s # Testing script Zyyy (code 1517910393) 791s # Testing script Zinh (code 1516858984) 791s # Testing script Zmth (code 1517122664) 791s # Testing script Arab (code 1098015074) 791s # Testing script Armn (code 1098018158) 791s # Testing script Beng (code 1113943655) 791s # Testing script Bopo (code 1114599535) 791s # Testing script Cher (code 1130915186) 791s # Testing script Copt (code 1131376756) 791s # Testing script Cyrl (code 1132032620) 791s # Testing script Dsrt (code 1148416628) 791s ok - glib/unicode.test 791s # Testing script Deva (code 1147500129) 791s # Testing script Ethi (code 1165256809) 791s # Testing script Geor (code 1197830002) 791s # Testing script Goth (code 1198486632) 791s # Testing script Grek (code 1198679403) 791s # Testing script Gujr (code 1198877298) 791s # Testing script Guru (code 1198879349) 791s # Testing script Hani (code 1214344809) 791s # Testing script Hang (code 1214344807) 791s # Testing script Hebr (code 1214603890) 791s # Testing script Hira (code 1214870113) 791s # Testing script Knda (code 1265525857) 791s # Testing script Kana (code 1264676449) 791s # Testing script Khmr (code 1265134962) 791s # Testing script Laoo (code 1281453935) 791s # Testing script Latn (code 1281455214) 791s # Testing script Mlym (code 1298954605) 791s # Testing script Mong (code 1299148391) 791s # Testing script Mymr (code 1299803506) 791s # Testing script Ogam (code 1332175213) 791s # Testing script Ital (code 1232363884) 791s # Testing script Orya (code 1332902241) 791s # Testing script Runr (code 1383427698) 791s # Testing script Sinh (code 1399418472) 791s # Testing script Syrc (code 1400468067) 791s # Testing script Taml (code 1415671148) 791s # Testing script Telu (code 1415933045) 791s # Testing script Thaa (code 1416126817) 791s # Testing script Thai (code 1416126825) 791s # Testing script Tibt (code 1416192628) 791s # Testing script Cans (code 1130458739) 791s # Testing script Yiii (code 1500080489) 791s # Testing script Tglg (code 1416064103) 791s # Testing script Hano (code 1214344815) 791s # Testing script Buhd (code 1114990692) 791s # Testing script Tagb (code 1415669602) 791s # Testing script Brai (code 1114792297) 791s # Testing script Cprt (code 1131442804) 791s # Testing script Limb (code 1281977698) 791s # Testing script Osma (code 1332964705) 791s # Testing script Shaw (code 1399349623) 791s # Testing script Linb (code 1281977954) 791s # Testing script Tale (code 1415670885) 791s # Testing script Ugar (code 1432838514) 791s # Testing script Talu (code 1415670901) 791s # Testing script Bugi (code 1114990441) 791s # Testing script Glag (code 1198285159) 791s # Testing script Tfng (code 1415999079) 791s # Testing script Sylo (code 1400466543) 791s # Testing script Xpeo (code 1483761007) 791s # Testing script Khar (code 1265131890) 791s # Testing script Zzzz (code 1517976186) 791s # Testing script Bali (code 1113681001) 791s # Testing script Xsux (code 1483961720) 791s # Testing script Phnx (code 1349021304) 791s # Testing script Phag (code 1349017959) 791s # Testing script Nkoo (code 1315663727) 791s # Testing script Kali (code 1264675945) 791s # Testing script Lepc (code 1281716323) 791s # Testing script Rjng (code 1382706791) 791s # Testing script Sund (code 1400204900) 791s # Testing script Saur (code 1398895986) 791s # Testing script Cham (code 1130914157) 791s # Testing script Olck (code 1332503403) 791s # Testing script Vaii (code 1449224553) 791s # Testing script Cari (code 1130459753) 791s # Testing script Lyci (code 1283023721) 791s # Testing script Lydi (code 1283023977) 791s # Testing script Avst (code 1098281844) 791s # Testing script Bamu (code 1113681269) 791s # Testing script Egyp (code 1164409200) 791s # Testing script Armi (code 1098018153) 791s # Testing script Phli (code 1349020777) 791s # Testing script Prti (code 1349678185) 791s # Testing script Java (code 1247901281) 791s # Testing script Kthi (code 1265920105) 791s # Testing script Lisu (code 1281979253) 791s # Testing script Mtei (code 1299473769) 791s # Testing script Sarb (code 1398895202) 791s # Testing script Orkh (code 1332898664) 791s # Testing script Samr (code 1398893938) 791s # Testing script Lana (code 1281453665) 791s # Testing script Tavt (code 1415673460) 791s # Testing script Batk (code 1113683051) 791s # Testing script Brah (code 1114792296) 791s # Testing script Mand (code 1298230884) 791s # Testing script Cakm (code 1130457965) 791s # Testing script Merc (code 1298494051) 791s # Testing script Mero (code 1298494063) 791s # Testing script Plrd (code 1349284452) 791s # Testing script Shrd (code 1399353956) 791s # Testing script Sora (code 1399812705) 791s # Testing script Takr (code 1415670642) 791s # Testing script Bass (code 1113682803) 791s # Testing script Aghb (code 1097295970) 791s # Testing script Dupl (code 1148547180) 791s # Testing script Elba (code 1164730977) 791s # Testing script Gran (code 1198678382) 791s # Testing script Khoj (code 1265135466) 791s # Testing script Sind (code 1399418468) 791s # Testing script Lina (code 1281977953) 791s # Testing script Mahj (code 1298229354) 791s # Testing script Mani (code 1298230889) 791s # Testing script Mend (code 1298493028) 791s # Testing script Modi (code 1299145833) 791s # Testing script Mroo (code 1299345263) 791s # Testing script Nbat (code 1315070324) 791s # Testing script Narb (code 1315009122) 791s # Testing script Perm (code 1348825709) 791s # Testing script Hmng (code 1215131239) 791s # Testing script Palm (code 1348562029) 791s # Testing script Pauc (code 1348564323) 791s # Testing script Phlp (code 1349020784) 791s # Testing script Sidd (code 1399415908) 791s # Testing script Tirh (code 1416196712) 791s # Testing script Wara (code 1466004065) 791s # Testing script Ahom (code 1097363309) 791s # Testing script Hluw (code 1215067511) 791s # Testing script Hatr (code 1214346354) 791s # Testing script Mult (code 1299541108) 791s # Testing script Hung (code 1215655527) 791s # Testing script Sgnw (code 1399287415) 791s # Testing script Adlm (code 1097100397) 791s # Testing script Bhks (code 1114139507) 791s # Testing script Marc (code 1298231907) 791s # Testing script Newa (code 1315272545) 791s # Testing script Osge (code 1332963173) 791s # Testing script Tang (code 1415671399) 791s # Testing script Gonm (code 1198485101) 791s # Testing script Nshu (code 1316186229) 791s # Testing script Soyo (code 1399814511) 791s # Testing script Zanb (code 1516334690) 791s # Testing script Dogr (code 1148151666) 791s # Testing script Gong (code 1198485095) 791s # Testing script Rohg (code 1383032935) 791s # Testing script Maka (code 1298230113) 791s # Testing script Medf (code 1298490470) 791s # Testing script Sogo (code 1399809903) 791s # Testing script Sogd (code 1399809892) 791s # Testing script Elym (code 1164736877) 791s # Testing script Nand (code 1315008100) 791s # Testing script Hmnp (code 1215131248) 791s # Testing script Wcho (code 1466132591) 791s # Testing script Chrs (code 1130918515) 791s # Testing script Diak (code 1147756907) 791s # Testing script Kits (code 1265202291) 791s # Testing script Yezi (code 1499822697) 791s # Testing script Cpmn (code 1131441518) 791s # Testing script Ougr (code 1333094258) 791s # Testing script Tnsa (code 1416524641) 791s # Testing script Toto (code 1416590447) 791s # Testing script Vith (code 1449751656) 791s # Testing script Kawi (code 1264678761) 791s # Testing script Nagm (code 1315006317) 791s # Testing script Todr (code 1416586354) 791s # Testing script Gara (code 1197568609) 791s # Testing script Tutg (code 1416983655) 791s # Testing script Sunu (code 1400204917) 791s # Testing script Gukh (code 1198877544) 791s # Testing script Krai (code 1265787241) 791s # Testing script Onao (code 1332633967) 791s ok 21 /unicode/iso15924 791s ok 22 /unicode/lower 791s ok 23 /unicode/mark 791s ok 24 /unicode/mirror 791s ok 25 /unicode/print 791s ok 26 /unicode/punctuation 791s ok 27 /unicode/script 791s ok 28 /unicode/space 791s ok 29 /unicode/strdown 791s ok 30 /unicode/strup 791s ok 31 /unicode/turkish-strupdown 791s ok 32 /unicode/title 791s ok 33 /unicode/upper 791s ok 34 /unicode/validate 791s ok 35 /unicode/wide 791s ok 36 /unicode/xdigit 791s ok 37 /unicode/xdigit-value 791s ok 38 /unicode/zero-width 791s ok 39 /unicode/normalize 791s # End of unicode tests 791s # Running test: glib/data-output-stream.test 791s ok - glib/data-output-stream.test 791s # Running test: glib/portal-support-flatpak-network-only.test 791s ok - glib/portal-support-flatpak-network-only.test 791s # Running test: glib/memory-monitor-psi.test 791s ok - glib/memory-monitor-psi.test 791s # Running test: glib/properties-refcount1.test 791s TAP version 14 791s # random seed: R02S2cc7196ea150a2ace878f0f321def246 791s 1..7 791s # Start of data-output-stream tests 791s ok 1 /data-output-stream/basic 791s ok 2 /data-output-stream/write-lines-LF 791s ok 3 /data-output-stream/write-lines-CR 791s ok 4 /data-output-stream/write-lines-CR-LF 791s ok 5 /data-output-stream/write-int 791s ok 6 /data-output-stream/seek 791s ok 7 /data-output-stream/truncate 791s # End of data-output-stream tests 791s TAP version 14 791s # random seed: R02Sc4ffa4bb5987dccac20316b259010c93 791s 1..1 791s # Start of portal-support tests 791s # Start of flatpak tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/system-config1:/tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/system-data1:/tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/runtime 791s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-network-only_AB46J3/portal-support/flatpak/network/.dirs/runtime/.flatpak-info 791s ok 1 /portal-support/flatpak/network 791s # End of flatpak tests 791s # End of portal-support tests 791s TAP version 14 791s # random seed: R02Sd876511cea548968c6869fa9e15e9df8 791s 1..1 791s # Start of memory-monitor-psi tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/system-config1:/tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/system-data1:/tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_memory-monitor-psi_B716J3/memory-monitor-psi/receive-signal/.dirs/runtime 791s # GLib-GIO-DEBUG: Write trigger some 70000 2000000 791s # GLib-GIO-DEBUG: Write trigger some 100000 2000000 791s # GLib-GIO-DEBUG: Write trigger full 100000 2000000 791s # GLib-GIO-DEBUG: Send low memory signal with warning level 0 791s # GLib-GIO-DEBUG: Send low memory signal with warning level 1 791s ok 1 /memory-monitor-psi/receive-signal 791s # End of memory-monitor-psi tests 791s TAP version 14 791s # random seed: R02S7e6864e86edc16925c8051c2d46b0747 791s 1..1 791s # Start of gobject tests 791s # Start of refcount tests 791s # .f 791s # .b 791s # .e 791s # .d 791s # .c 791s # .b 791s # .f 792s # .e 792s # .d 792s # .c 792s # .b 792s # .d 792s # .f 792s # .e 792s # .c 792s # .b 792s # .d 792s # .f 792s # .e 792s # .c 792s # .b 792s # .d 792s # .f 792s # .c 792s # .e 792s # .b 792s # .f 792s # .d 792s # .e 792s # .c 792s # .b 792s # .e 792s # .f 792s # .d 792s # .c 792s # .b 792s # .e 792s # .f 792s # .d 792s # .c 792s # .e 792s # .b 792s # .f 792s # .d 792s # .e 792s # .c 792s # .b 792s # .f 793s # .e 793s # .d 793s # .c 793s # .f 793s # .b 793s # .e 793s # .c 793s # .d 793s # .f 793s # .e 793s # .b 793s # .d 793s # .c 793s # .f 793s # .e 793s # .d 793s # .b 793s # .c 793s # .f 793s # .e 793s # .d 793s # .b 793s # .f 793s # .c 793s # .e 793s # .f 793s # .d 793s # .b 793s # .c 793s # .e 793s # .f 793s # .d 793s # .b 793s # .e 793s # .d 793s # .b 793s # .f 793s # .c 793s # .e 794s # .d 794s # .b 794s # .f 794s # .c 794s # .e 794s # .d 794s # .b 794s # .f 794s # .d 794s # .c 794s # .e 794s # .b 794s # .f 794s # .d 794s # .c 794s # .e 794s # .b 794s # Executing: glib/properties-refcount1.test 794s # .f 794s # .b 794s # .d 794s # .c 794s # .e 794s # .f 794s # .d 794s # .b 794s # .c 794s # .e 794s # .d 794s # .f 794s ok - glib/properties-refcount1.test 794s # Running test: glib/readwrite.test 794s # .b 794s ok 1 /gobject/refcount/properties-1 794s # slow test /gobject/refcount/properties-1 executed in 3.00 secs 794s # End of refcount tests 794s # End of gobject tests 794s TAP version 14 794s # random seed: R02Sedd1ffbc17172cd191910ff0044e050c 794s 1..3 794s # Start of readwrite tests 794s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 794s ok 1 /readwrite/test_g_file_open_readwrite 794s ok 2 /readwrite/test_g_file_create_readwrite 794s ok - glib/readwrite.test 794s # Running test: glib/spawn-multithreaded.test 794s ok 3 /readwrite/test_g_file_replace_readwrite 794s # End of readwrite tests 794s TAP version 14 794s # random seed: R02Sf4bf0163807bdf7466e148e9f0ec1d61 794s 1..4 794s # Start of gthread tests 795s # Child 35842 (ttl 1) exited, status 0 796s # Child 35843 (ttl 2) exited, status 0 796s ok 1 /gthread/spawn-childs 796s # slow test /gthread/spawn-childs executed in 2.00 secs 796s # Created pid: 35847 (ttl 2) 796s # Created pid: 35848 (ttl 1) 797s # Child 35848 (ttl 1) exited, status 0 798s # Child 35847 (ttl 2) exited, status 0 798s ok 2 /gthread/spawn-childs-threads 798s # slow test /gthread/spawn-childs-threads executed in 2.00 secs 798s ok 3 /gthread/spawn-sync 798s ok 4 /gthread/spawn-async 798s # End of gthread tests 798s ok - glib/spawn-multithreaded.test 798s # Running test: glib/power-profile-monitor-portal.test 798s TAP version 13 798s ok 1 __main__.TestPowerProfileMonitorPortal.test_power_profile_power_saver_enabled_portal # SKIP xdg-desktop-portal not available 799s ok 2 __main__.TestPowerProfileMonitorPortal.test_power_profile_power_saver_enabled_portal_default # SKIP xdg-desktop-portal not available 799s ok - glib/power-profile-monitor-portal.test 799s 1..2 799s # Running test: glib/binding.test 799s TAP version 14 799s # random seed: R02Sac95c36f2b9b4e6f8c9170f29ce8362d 799s 1..19 799s # Start of binding tests 799s ok 1 /binding/default 799s # /binding/canonicalisation summary: Test that bindings set up with non-canonical property names work 799s ok 2 /binding/canonicalisation 799s ok 3 /binding/bidirectional 799s ok 4 /binding/transform 799s ok 5 /binding/transform-default 799s ok 6 /binding/transform-closure 799s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=621782 799s ok 7 /binding/chain 799s ok 8 /binding/sync-create 799s ok 9 /binding/invert-boolean 799s ok 10 /binding/same-object 799s ok 11 /binding/unbind 799s ok 12 /binding/unbind-weak 799s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1373 799s ok 13 /binding/unbind-multiple 799s ok 14 /binding/fail 799s ok 15 /binding/interface 799s # /binding/concurrent-unbind summary: Test that unbinding from multiple threads concurrently works correctly 799s ok 16 /binding/concurrent-unbind 799s # /binding/concurrent-finalizing summary: Test that finalizing source/target from multiple threads concurrently works correctly 799s ok 17 /binding/concurrent-finalizing 799s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2676 799s ok 18 /binding/dispose-source 799s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2676 799s ok 19 /binding/dispose-target 799s # End of binding tests 799s TAP version 14 799s # random seed: R02S31f39bb6be7345b943cec21a903f14db 799s 1..2 799s # Start of bitlock tests 799s # Start of performance tests 799s # max perf: iterations per second 799s ok 1 /bitlock/performance/uncontended 799s ok - glib/binding.test 799s # Running test: glib/bitlock.test 799s ok 2 /bitlock/performance/parallel 799s # End of performance tests 799s # End of bitlock tests 799s ok - glib/bitlock.test 799s # Running test: glib/closure.test 799s TAP version 14 799s # random seed: R02S72e0dc244f663287bc74826d3bd4fd0a 799s 1..6 799s # Start of closure tests 799s ok 1 /closure/idle 799s ok 2 /closure/timeout 799s ok 3 /closure/iochannel 799s ok 4 /closure/child 799s ok 5 /closure/fd 799s ok 6 /closure/signal 799s # End of closure tests 799s ok - glib/closure.test 799s # Running test: glib/data-input-stream.test 799s TAP version 14 799s # random seed: R02S30f2a04a0a9673c7a020c38f49606ae6 799s 1..10 799s # Start of data-input-stream tests 799s ok 1 /data-input-stream/basic 799s ok 2 /data-input-stream/read-lines-LF 799s ok 3 /data-input-stream/read-lines-LF-valid-utf8 799s ok 4 /data-input-stream/read-lines-LF-invalid-utf8 799s ok 5 /data-input-stream/read-lines-CR 799s ok 6 /data-input-stream/read-lines-CR-LF 799s ok 7 /data-input-stream/read-lines-any 799s ok 8 /data-input-stream/read-until 799s # Test vector 0: part1 # part2 $ part3 ? part4 ? and #$?^ 799s # Test vector 1: {"key": "value"}? and ? 799s ok 9 /data-input-stream/read-upto 799s # Executing: glib/data-input-stream.test 799s ok - glib/data-input-stream.test 799s ok 10 /data-input-stream/read-int 799s # End of data-input-stream tests 799s # Running test: glib/testing.test 799s TAP version 14 799s # random seed: R02S6abdc0ee11a9c48e65829e5465d682f9 799s 1..1 799s # Start of assert tests 799s ok 1 /assert/finalize_object 799s # Start of finalize_object tests 799s # Start of subprocess tests 799s # End of subprocess tests 799s # End of finalize_object tests 799s # End of assert tests 799s ok - glib/testing.test 799s # Running test: glib/private.test 799s TAP version 14 799s # random seed: R02S9aa41e48c034051e317948b64a482aa0 799s 1..8 799s # Start of thread tests 799s ok 1 /thread/private1 800s ok 2 /thread/private2 800s # slow test /thread/private2 executed in 1.08 secs 800s ok 3 /thread/private3 800s ok 4 /thread/staticprivate1 800s ok 5 /thread/staticprivate2 800s ok 6 /thread/staticprivate3 801s ok 7 /thread/staticprivate4 801s # slow test /thread/staticprivate4 executed in 1.08 secs 801s ok 8 /thread/staticprivate5 801s # End of thread tests 801s ok - glib/private.test 801s # Running test: glib/references.test 801s TAP version 14 801s # random seed: R02See22c7d079999ebf516a351eb73a1375 801s 1..4 801s # Start of gobject tests 801s ok 1 /gobject/references 801s ok 2 /gobject/references-many 801s ok 3 /gobject/references_two 801s ok 4 /gobject/references_run_dispose 801s # End of gobject tests 801s ok - glib/references.test 801s # Running test: glib/gdbus-export.test 801s TAP version 14 801s # random seed: R02S1914495337403550453d13261a9053eb 801s 1..7 801s # Start of gdbus tests 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration/.dirs/runtime 801s ok 1 /gdbus/object-registration 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures/.dirs/runtime 801s ok 2 /gdbus/object-registration-with-closures 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/object-registration-with-closures2/.dirs/runtime 801s ok 3 /gdbus/object-registration-with-closures2 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/registered-interfaces/.dirs/runtime 801s ok 4 /gdbus/registered-interfaces 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/async-properties/.dirs/runtime 801s ok 5 /gdbus/async-properties 801s # Start of threaded-unregistration tests 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/object/.dirs/runtime 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400 801s # /gdbus/threaded-unregistration/object summary: Test that object/subtree unregistration from one thread doesn’t cause problems when racing with method callbacks in another thread for that object or subtree 802s ok 6 /gdbus/threaded-unregistration/object # SKIP Failed to reproduce race (17 iterations with unregistration first, 983 with call first); skipping test 802s # slow test /gdbus/threaded-unregistration/object executed in 1.16 secs 802s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/home 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/cache 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/system-config1:/tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/system-config2 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/config 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/system-data1:/tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/system-data2 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/data 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/state 802s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_EH3KK3/gdbus/threaded-unregistration/subtree/.dirs/runtime 802s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400 802s # /gdbus/threaded-unregistration/subtree summary: Test that object/subtree unregistration from one thread doesn’t cause problems when racing with method callbacks in another thread for that object or subtree 804s ok - glib/gdbus-export.test 804s # Running test: glib/slice.test 804s ok 7 /gdbus/threaded-unregistration/subtree # SKIP Failed to reproduce race (31 iterations with unregistration first, 969 with call first); skipping test 804s # slow test /gdbus/threaded-unregistration/subtree executed in 1.21 secs 804s # End of threaded-unregistration tests 804s # End of gdbus tests 804s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 804s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 804s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 804s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 804s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 804s TAP version 14 804s # random seed: R02Se18c2befa63619ec93d4df0622e94b1a 804s 1..3 804s # Start of slice tests 804s ok 1 /slice/copy 804s ok 2 /slice/chain 804s ok - glib/slice.test 804s ok 3 /slice/allocate 804s # End of slice tests 804s # Running test: glib/memory-monitor-poll.test 804s TAP version 14 804s # random seed: R02S816edb225bc96bf8a503baf1466b541d 804s 1..4 804s # Start of memory-monitor-poll tests 804s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation poll (GMemoryMonitorPoll) for ‘gio-memory-monitor’ 804s ok 1 /memory-monitor-poll/dup-default 804s # GLib-GIO-DEBUG: memory free ratio 0.190000 804s # GLib-GIO-DEBUG: Send low memory signal with warning level 2 804s ok 2 /memory-monitor-poll/critical-event 804s # GLib-GIO-DEBUG: memory free ratio 0.290000 804s # GLib-GIO-DEBUG: Send low memory signal with warning level 1 804s ok 3 /memory-monitor-poll/medium-event 804s # Executing: glib/memory-monitor-poll.test 804s # GLib-GIO-DEBUG: memory free ratio 0.390000 804s # GLib-GIO-DEBUG: Send low memory signal with warning level 0 804s ok 4 /memory-monitor-poll/low-event 804s # End of memory-monitor-poll tests 804s ok - glib/memory-monitor-poll.test 804s # Running test: glib/signals-refcount3.test 804s TAP version 14 804s # random seed: R02S972b26309505d54fc1744edb759db325 804s 1..1 804s # Start of gobject tests 804s # Start of refcount tests 804s # init 0x144030cdd4a0 804s # 804s # init 0x144030cd5580 804s # 809s # Executing: glib/signals-refcount3.test 809s # dispose 0x144030cdd4a0! 809s # 809s # dispose 0x144030cd5580! 809s # 809s ok 1 /gobject/refcount/signals 809s # slow test /gobject/refcount/signals executed in 5.00 secs 809s # End of refcount tests 809s # End of gobject tests 809s ok - glib/signals-refcount3.test 809s # Running test: glib/portal-support-flatpak-none.test 809s TAP version 14 809s # random seed: R02Sda7ccbc7c80ace2ef65c8d9d78447895 809s 1..1 809s # Start of portal-support tests 809s # Start of flatpak tests 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/system-config1:/tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/system-data1:/tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/runtime 809s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-none_2JPNK3/portal-support/flatpak/none/.dirs/runtime/.flatpak-info 809s ok 1 /portal-support/flatpak/none 809s # End of flatpak tests 809s # End of portal-support tests 809s ok - glib/portal-support-flatpak-none.test 809s # Running test: glib/portal-support-snap.test 809s TAP version 14 809s # random seed: R02Sa7512b88c5ab0532fbaee9280f279c10 809s 1..7 809s # Start of portal-support tests 809s # Start of snap tests 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/no-snapctl: No such file or directory 809s ok 1 /portal-support/snap/no-snapctl 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/none: No such file or directory 809s ok 2 /portal-support/snap/none 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/all: No such file or directory 809s ok 3 /portal-support/snap/all 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/desktop-only: No such file or directory 809s ok 4 /portal-support/snap/desktop-only 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/network-only: No such file or directory 809s ok 5 /portal-support/snap/network-only 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/gsettings-only: No such file or directory 809s ok 6 /portal-support/snap/gsettings-only 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/system-config1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/system-data1:/tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime 809s # Created snap.yaml in /tmp/test_portal-support-snap_4YSNK3/meta/snap.yaml 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s # Created snapctl in /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3/portal-support/snap/updates-dynamically: No such file or directory 809s ok 7 /portal-support/snap/updates-dynamically 809s # End of snap tests 809s # End of portal-support tests 809s Unable to clean up temporary directory /tmp/test_portal-support-snap_4YSNK3: No such file or directory 809s ok - glib/portal-support-snap.test 809s # Running test: glib/field-info.test 809s TAP version 14 809s # random seed: R02S4bd5c8e4f14966ae2cba6264e908a047 809s 1..4 809s # Start of field-info tests 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/system-config1:/tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/system-data1:/tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_field-info_DEOKK3/field-info/basic-struct-field/.dirs/runtime 809s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 809s # /field-info/basic-struct-field summary: Test basic properties of a GIFieldInfo from a C struct 809s ok 1 /field-info/basic-struct-field 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/system-config1:/tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/system-data1:/tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_field-info_DEOKK3/field-info/basic-union-field/.dirs/runtime 809s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 809s # /field-info/basic-union-field summary: Test basic properties of a GIFieldInfo from a C union 809s ok 2 /field-info/basic-union-field 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/system-config1:/tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/system-data1:/tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_field-info_DEOKK3/field-info/read-write-struct-field/.dirs/runtime 809s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 809s # /field-info/read-write-struct-field summary: Test reading and writing of a GIFieldInfo from a C union 809s ok 3 /field-info/read-write-struct-field 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/system-config1:/tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/system-data1:/tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_field-info_DEOKK3/field-info/read-write-union-field/.dirs/runtime 809s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 809s # /field-info/read-write-union-field summary: Test reading and writing of a GIFieldInfo from a C union 809s ok 4 /field-info/read-write-union-field 809s # End of field-info tests 809s ok - glib/field-info.test 809s # Running test: glib/gdbus-threading.test 809s ok - glib/gdbus-threading.test 809s TAP version 14 809s # random seed: R02Sdb48bd916811544f66f11a02322bcc85 809s # 1..0 # SKIP all gdbus-threading tests skipped because they are too unreliable (glib#1515) 809s # Running test: glib/gdbus-non-socket.test 809s TAP version 14 809s # random seed: R02S34bffe2eb13bd5bdbc6678d3db9d6c03 809s 1..1 809s # Start of gdbus tests 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/system-config1:/tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/system-data1:/tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-non-socket_IKNKK3/gdbus/non-socket/.dirs/runtime 809s ok 1 /gdbus/non-socket 809s # End of gdbus tests 809s ok - glib/gdbus-non-socket.test 809s # Running test: glib/gmenumodel.test 809s TAP version 14 809s # random seed: R02Sdc8f5207ca3e373da9c3b2bc270ab190 809s 1..15 809s # Start of gmenu tests 811s ok 1 /gmenu/equality 811s # slow test /gmenu/equality executed in 1.42 secs 812s ok 2 /gmenu/random 812s # slow test /gmenu/random executed in 1.85 secs 812s ok 3 /gmenu/attributes 812s ok 4 /gmenu/links 812s ok 5 /gmenu/mutable 812s ok 6 /gmenu/convenience 812s ok 7 /gmenu/menuitem 812s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/861 813s ok 8 /gmenu/input-validation 813s # Start of dbus tests 814s ok 9 /gmenu/dbus/roundtrip 814s # slow test /gmenu/dbus/roundtrip executed in 1.21 secs 814s # Executing: glib/gmenumodel.test 814s ok 10 /gmenu/dbus/subscriptions 815s ok 11 /gmenu/dbus/threaded 815s # slow test /gmenu/dbus/threaded executed in 1.35 secs 815s # Start of peer tests 816s ok 12 /gmenu/dbus/peer/roundtrip 816s # slow test /gmenu/dbus/peer/roundtrip executed in 1.01 secs 817s ok 13 /gmenu/dbus/peer/subscriptions 817s # End of peer tests 817s # Start of export tests 817s # /gmenu/dbus/export/error-handling summary: Test that error handling of menu model export failure works 817s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 817s ok 14 /gmenu/dbus/export/error-handling 817s # End of export tests 817s # End of dbus tests 817s # Start of attributes tests 817s ok 15 /gmenu/attributes/iterate 817s # End of attributes tests 817s # End of gmenu tests 817s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 817s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 817s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 817s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 817s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 817s ok - glib/gmenumodel.test 817s # Running test: glib/proxy-test.test 817s TAP version 14 817s # random seed: R02S8dc326b4d7e6fc7229b2515c957f2dca 817s 1..11 817s # Start of proxy tests 817s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestProxyResolver) for ‘gio-proxy-resolver’ 817s ok 1 /proxy/direct_sync 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3df20 and GSocketClientAsyncConnectData 0xd78b7f3d440 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3ea40 for GSocketClientAsyncConnectData 0xd78b7f3d440 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s ok 2 /proxy/direct_async 817s ok 3 /proxy/single_sync 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e500 and GSocketClientAsyncConnectData 0xd78b7f3d440 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3fba0 for GSocketClientAsyncConnectData 0xd78b7f3d440 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s ok 4 /proxy/single_async 817s ok 5 /proxy/multiple_sync 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e7f0 and GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f400e0 for GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f40080 for GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s ok 6 /proxy/multiple_async 817s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597 817s ok 7 /proxy/invalid-uris-sync 817s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e3e0 and GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e500 and GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e3e0 and GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3eaa0 for GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e500 and GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f402e0 for GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s ok 8 /proxy/invalid-uris-async 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3df20 and GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: IPv6 DNS error: Not found 817s # GLib-GIO-DEBUG: IPv4 DNS error: Not found 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Not found 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Not found 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f40400 and GSocketClientAsyncConnectData 0xd78b7f3e990 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3fa00 for GSocketClientAsyncConnectData 0xd78b7f3e990 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e3e0 and GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3eaa0 for GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s ok 9 /proxy/dns 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3df20 and GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3eaa0 for GSocketClientAsyncConnectData 0xd78b7f3e780 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 817s ok - glib/proxy-test.test 817s # Running test: glib/type.test 817s ok - glib/type.test 817s # Running test: glib/gdbus-close-pending.test 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3e3e0 and GSocketClientAsyncConnectData 0xd78b7f3e5c0 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f3fa00 for GSocketClientAsyncConnectData 0xd78b7f3e5c0 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 817s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 817s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xd78b7f3df20 and GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 817s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xd78b7f400e0 for GSocketClientAsyncConnectData 0xd78b7f40270 817s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 817s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 817s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 817s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 817s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 817s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 817s ok 10 /proxy/override 817s ok 11 /proxy/enumerator-ports 817s # End of proxy tests 817s TAP version 14 817s # random seed: R02S244710d59db7146ca6c07b027b5b2b2c 817s 1..6 817s # Start of type tests 817s ok 1 /type/registration-serial 817s ok 2 /type/interface-prerequisite 817s ok 3 /type/interface-check 817s ok 4 /type/next-base 817s ok 5 /type/is-a 817s # Invalid types can’t be queried. 817s # Unclassed types can’t be queried. 817s ok 6 /type/query 817s # End of type tests 817s TAP version 14 817s # random seed: R02Sa87d3479d7e5f1aa16dc451727b3355a 817s 1..2 817s # Start of gdbus tests 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/system-config1:/tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/system-data1:/tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/close-pending/.dirs/runtime 817s ok 1 /gdbus/close-pending 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/system-config1:/tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/system-data1:/tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-close-pending_CO4GK3/gdbus/unref-pending/.dirs/runtime 818s ok 2 /gdbus/unref-pending 818s # End of gdbus tests 818s ok - glib/gdbus-close-pending.test 818s # Running test: glib/array-test.test 818s TAP version 14 818s # random seed: R02S56790afff9e36c7af68ab192c8ce1ba4 818s 1..120 818s # Start of array tests 818s ok 1 /array/ref-count 818s ok 2 /array/steal 818s ok 3 /array/clear-func 818s ok 4 /array/binary-search 818s ok 5 /array/overflow-append-vals 818s ok 6 /array/overflow-set-size 818s # Start of new tests 818s ok 7 /array/new/zero-terminated 818s ok 8 /array/new/take 818s ok 9 /array/new/take-zero-terminated 818s # Start of take tests 818s ok 10 /array/new/take/empty 818s ok 11 /array/new/take/overflow 818s ok 12 /array/new/take/zero-size 818s # End of take tests 818s # Start of take-zero-terminated tests 818s ok 13 /array/new/take-zero-terminated/zero-size 818s ok 14 /array/new/take-zero-terminated/null 818s # End of take-zero-terminated tests 818s # End of new tests 818s # Start of copy tests 818s # /array/copy/sized summary: Test that copying a newly-allocated sized array works. 818s ok 15 /array/copy/sized 818s ok 16 /array/copy/zero-terminated 818s ok 17 /array/copy/non-zero-terminated-no-clear 818s ok 18 /array/copy/non-zero-terminated-clear 818s ok 19 /array/copy/zero-terminated-no-clear 818s ok 20 /array/copy/zero-terminated-clear 818s # End of copy tests 818s # Start of remove-range tests 818s ok 21 /array/remove-range/zero-terminated-null 818s ok 22 /array/remove-range/non-zero-terminated-no-clear 818s ok 23 /array/remove-range/non-zero-terminated-clear 818s ok 24 /array/remove-range/zero-terminated-no-clear 818s ok 25 /array/remove-range/zero-terminated-clear 818s # End of remove-range tests 818s # Start of set-size tests 818s ok 26 /array/set-size/zero-terminated-null 818s ok 27 /array/set-size/non-zero-terminated-no-clear 818s ok 28 /array/set-size/non-zero-terminated-clear 818s ok 29 /array/set-size/zero-terminated-no-clear 818s ok 30 /array/set-size/zero-terminated-clear 818s # Start of sized tests 818s ok 31 /array/set-size/sized/non-zero-terminated-no-clear 818s ok 32 /array/set-size/sized/non-zero-terminated-clear 818s ok 33 /array/set-size/sized/zero-terminated-no-clear 818s ok 34 /array/set-size/sized/zero-terminated-clear 818s # End of sized tests 818s # End of set-size tests 818s # Start of append-val tests 818s ok 35 /array/append-val/non-zero-terminated-no-clear 818s ok 36 /array/append-val/non-zero-terminated-clear 818s ok 37 /array/append-val/zero-terminated-no-clear 818s ok 38 /array/append-val/zero-terminated-clear 818s # End of append-val tests 818s # Start of prepend-val tests 818s ok 39 /array/prepend-val/non-zero-terminated-no-clear 818s ok 40 /array/prepend-val/non-zero-terminated-clear 818s ok 41 /array/prepend-val/zero-terminated-no-clear 818s ok 42 /array/prepend-val/zero-terminated-clear 818s # End of prepend-val tests 818s # Start of prepend-vals tests 818s ok 43 /array/prepend-vals/non-zero-terminated-no-clear 818s ok 44 /array/prepend-vals/non-zero-terminated-clear 818s ok 45 /array/prepend-vals/zero-terminated-no-clear 818s ok 46 /array/prepend-vals/zero-terminated-clear 818s # End of prepend-vals tests 818s # Start of insert-vals tests 818s ok 47 /array/insert-vals/non-zero-terminated-no-clear 818s ok 48 /array/insert-vals/non-zero-terminated-clear 818s ok 49 /array/insert-vals/zero-terminated-no-clear 818s ok 50 /array/insert-vals/zero-terminated-clear 818s # End of insert-vals tests 818s # Start of remove-index tests 818s ok 51 /array/remove-index/non-zero-terminated-no-clear 818s ok 52 /array/remove-index/non-zero-terminated-clear 818s ok 53 /array/remove-index/zero-terminated-no-clear 818s ok 54 /array/remove-index/zero-terminated-clear 818s # End of remove-index tests 818s # Start of remove-index-fast tests 818s ok 55 /array/remove-index-fast/non-zero-terminated-no-clear 818s ok 56 /array/remove-index-fast/non-zero-terminated-clear 818s ok 57 /array/remove-index-fast/zero-terminated-no-clear 818s ok 58 /array/remove-index-fast/zero-terminated-clear 818s # End of remove-index-fast tests 818s # Start of sort tests 818s ok 59 /array/sort/non-zero-terminated-no-clear 818s ok 60 /array/sort/non-zero-terminated-clear 818s ok 61 /array/sort/zero-terminated-no-clear 818s ok 62 /array/sort/zero-terminated-clear 818s # End of sort tests 818s # Start of sort-with-data tests 818s ok 63 /array/sort-with-data/non-zero-terminated-no-clear 818s ok 64 /array/sort-with-data/non-zero-terminated-clear 818s ok 65 /array/sort-with-data/zero-terminated-no-clear 818s ok 66 /array/sort-with-data/zero-terminated-clear 818s # End of sort-with-data tests 818s # End of array tests 818s # Start of pointerarray tests 818s ok 67 /pointerarray/add 818s ok 68 /pointerarray/insert 818s ok 69 /pointerarray/new-take 818s ok 70 /pointerarray/new-take-null-terminated 818s ok 71 /pointerarray/new-from-array 818s ok 72 /pointerarray/new-from-null-terminated-array 818s ok 73 /pointerarray/free-func 818s ok 74 /pointerarray/array_extend_and_steal 818s ok 75 /pointerarray/sort 818s ok 76 /pointerarray/sort-with-data 818s ok 77 /pointerarray/sort-values 818s ok 78 /pointerarray/sort-values-with-data 818s ok 79 /pointerarray/remove-range 818s ok 80 /pointerarray/steal 818s # Start of free tests 818s # /pointerarray/free/null-terminated summary: Check that g_ptr_array_free() on an empty array returns a NULL-terminated empty array 818s ok 81 /pointerarray/free/null-terminated 818s # End of free tests 818s # Start of new-take tests 818s ok 82 /pointerarray/new-take/empty 818s ok 83 /pointerarray/new-take/overflow 818s ok 84 /pointerarray/new-take/with-free-func 818s # End of new-take tests 818s # Start of new-take-null-terminated tests 818s ok 85 /pointerarray/new-take-null-terminated/empty 818s ok 86 /pointerarray/new-take-null-terminated/with-free-func 818s ok 87 /pointerarray/new-take-null-terminated/from-gstrv 818s # End of new-take-null-terminated tests 818s # Start of new-from-array tests 818s ok 88 /pointerarray/new-from-array/empty 818s ok 89 /pointerarray/new-from-array/overflow 818s ok 90 /pointerarray/new-from-array/with-copy-and-free-func 818s # End of new-from-array tests 818s # Start of new-from-null-terminated-array tests 818s ok 91 /pointerarray/new-from-null-terminated-array/empty 818s ok 92 /pointerarray/new-from-null-terminated-array/with-copy-and-free-func 818s ok 93 /pointerarray/new-from-null-terminated-array/from-gstrv 818s # End of new-from-null-terminated-array tests 818s # Start of ref-count tests 818s ok 94 /pointerarray/ref-count/not-null-terminated 818s ok 95 /pointerarray/ref-count/null-terminated 818s # End of ref-count tests 818s # Start of array_copy tests 818s # /pointerarray/array_copy/not-null-terminated summary: Check all normal behaviour of stealing elements from one array to append to another, covering different array sizes and element copy functions 818s ok 96 /pointerarray/array_copy/not-null-terminated 818s # /pointerarray/array_copy/null-terminated summary: Check all normal behaviour of stealing elements from one array to append to another, covering different array sizes and element copy functions 818s ok 97 /pointerarray/array_copy/null-terminated 818s # End of array_copy tests 818s # Start of array_extend tests 818s ok 98 /pointerarray/array_extend/not-null-terminated 818s ok 99 /pointerarray/array_extend/null-terminated 818s # End of array_extend tests 818s # Start of sort tests 818s # /pointerarray/sort/example summary: Check that the doc-comment for g_ptr_array_sort() is correct 818s ok 100 /pointerarray/sort/example 818s # End of sort tests 818s # Start of sort-with-data tests 818s # /pointerarray/sort-with-data/example summary: Check that the doc-comment for g_ptr_array_sort_with_data() is correct 818s ok 101 /pointerarray/sort-with-data/example 818s # End of sort-with-data tests 818s # Start of sort-values tests 818s ok 102 /pointerarray/sort-values/example 818s # End of sort-values tests 818s # Start of sort-values-with-data tests 818s ok 103 /pointerarray/sort-values-with-data/example 818s # End of sort-values-with-data tests 818s # Start of find tests 818s ok 104 /pointerarray/find/empty 818s ok 105 /pointerarray/find/non-empty 818s # End of find tests 818s # Start of steal_index tests 818s ok 106 /pointerarray/steal_index/not-null-terminated 818s ok 107 /pointerarray/steal_index/null-terminated 818s # End of steal_index tests 818s # End of pointerarray tests 818s # Start of bytearray tests 818s ok 108 /bytearray/steal 818s ok 109 /bytearray/append 818s ok - glib/array-test.test 818s ok 110 /bytearray/prepend 818s ok 111 /bytearray/remove 818s ok 112 /bytearray/remove-fast 818s ok 113 /bytearray/remove-range 818s ok 114 /bytearray/ref-count 818s ok 115 /bytearray/set-size 818s ok 116 /bytearray/sort 818s ok 117 /bytearray/sort-with-data 818s ok 118 /bytearray/new-take 818s ok 119 /bytearray/new-take-overflow 818s ok 120 /bytearray/free-to-bytes 818s # End of bytearray tests 818s # Running test: glib/signal-handler.test 818s TAP version 14 818s # random seed: R02S2323c309e8c8807252cfda6b375f7bcd 818s 1..7 818s # Start of signal tests 818s # Start of handler tests 818s ok - glib/signal-handler.test 818s # min perf: connected 1 handlers in 0.000 seconds 818s ok 1 /signal/handler/connect-many 818s # min perf: disconnected 1 handlers in 0.000 seconds 818s ok 2 /signal/handler/disconnect-many-ordered 818s # min perf: disconnected 1 handlers in 0.000 seconds 818s ok 3 /signal/handler/disconnect-many-inverse 818s # min perf: disconnected 1 handlers in 0.000 seconds 818s ok 4 /signal/handler/disconnect-many-random 818s # min perf: disconnected 1 handlers in 0.000 seconds 818s ok 5 /signal/handler/disconnect-2-signals 818s # min perf: disconnected 1 handlers in 0.000 seconds 818s ok 6 /signal/handler/disconnect-2-objects 818s # min perf: blocked and unblocked 1 handlers in 0.000 seconds 818s ok 7 /signal/handler/block-many 818s # End of handler tests 818s # End of signal tests 818s # Running test: glib/live-g-file.test 818s TAP version 14 818s # random seed: R02S42fc9b2fe1605eedec04efcbd3334bef 818s 1..13 818s # Start of live-g-file tests 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/prep_clean_structure/.dirs/runtime 818s # Cleaning target testing structure in '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 818s ok 1 /live-g-file/prep_clean_structure 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/create_structure/.dirs/runtime 818s # 818s # Going to create testing structure in '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # Creating directory 'dir1'... 818s # Creating directory 'dir1/subdir'... 818s # Creating directory 'dir2'... 818s # Creating directory 'dir-target'... 818s # Creating directory 'dir_no-access'... 818s # Creating directory 'dir_no-write'... 818s # Creating file 'target-file'... 818s # Creating file 'normal_file'... 818s # Creating symlink 'normal_file-symlink' --> 'normal_file'... 818s # Creating file 'executable_file'... 818s # Creating file 'private_file'... 818s # Creating file 'normal_file2'... 818s # Creating file 'readonly_file'... 818s # Creating file 'UTF_příliš z'... 818s # Creating directory 'dir_příliš z'... 818s # Creating symlink 'lost_symlink' --> 'nowhere'... 818s # Creating directory 'dir_hidden'... 818s # Creating file 'dir_hidden/.a-hidden-file'... 818s # Creating file 'dir_hidden/file-in-.hidden1'... 818s # Creating file 'dir_hidden/file-in-.hidden2'... 818s # Creating pattern file... 818s # done. 818s ok 2 /live-g-file/create_structure 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_initial_structure/.dirs/runtime 818s # Testing sample structure in '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # Testing file 'dir1'... 818s # Testing file 'dir1/subdir'... 818s # Testing file 'dir2'... 818s # Testing file 'dir-target'... 818s # Testing file 'dir_no-access'... 818s # Testing file 'dir_no-write'... 818s # Testing file 'target-file'... 818s # Testing file 'normal_file'... 818s # Testing file 'normal_file-symlink'... 818s # Testing file 'executable_file'... 818s # Testing file 'private_file'... 818s # Testing file 'normal_file2'... 818s # Testing file 'readonly_file'... 818s # Testing file 'UTF_příliš z'... 818s # Testing file 'dir_příliš z'... 818s # Testing file 'lost_symlink'... 818s # Testing file 'dir_hidden'... 818s # Testing file 'dir_hidden/.a-hidden-file'... 818s # Testing file 'dir_hidden/file-in-.hidden1'... 818s # Testing file 'dir_hidden/file-in-.hidden2'... 818s # Testing pattern file... 818s # read 65536 bytes, total = 65536 of 65536. 818s ok 3 /live-g-file/test_initial_structure 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_traverse_structure/.dirs/runtime 818s # Traversing through the sample structure in '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # Found file dir1, relative to root: dir1 818s # Found file subdir, relative to root: dir1/subdir 818s # Found file dir2, relative to root: dir2 818s # Found file dir-target, relative to root: dir-target 818s # Found file dir_no-access, relative to root: dir_no-access 818s # Found file dir_no-write, relative to root: dir_no-write 818s # Found file target-file, relative to root: target-file 818s # Found file normal_file, relative to root: normal_file 818s # Found file normal_file-symlink, relative to root: normal_file-symlink 818s # Found file executable_file, relative to root: executable_file 818s # Found file private_file, relative to root: private_file 818s # Found file normal_file2, relative to root: normal_file2 818s # Found file readonly_file, relative to root: readonly_file 818s # Found file UTF_příliš z, relative to root: UTF_příliš z 818s # Found file dir_příliš z, relative to root: dir_příliš z 818s # Found file lost_symlink, relative to root: lost_symlink 818s # Found file dir_hidden, relative to root: dir_hidden 818s # Found file .a-hidden-file, relative to root: dir_hidden/.a-hidden-file 818s # Found file file-in-.hidden1, relative to root: dir_hidden/file-in-.hidden1 818s # Found file .hidden, relative to root: dir_hidden/.hidden 818s # Found file file-in-.hidden2, relative to root: dir_hidden/file-in-.hidden2 818s # Found file pattern_file, relative to root: pattern_file 818s ok 4 /live-g-file/test_traverse_structure 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_enumerate/.dirs/runtime 818s # Test enumerate '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # Testing file 'dir_no-access' 818s # Testing file 'normal_file' 818s # Testing file 'normal_file-symlink' 818s # Testing file 'not_exists' 818s # Testing file 'not_exists' 818s # Testing file 'not_exists2' 818s # Testing file 'not_exists3' 818s # Testing file 'not_exists4' 818s # Testing file 'dir_no-execute/file' 818s ok 5 /live-g-file/test_enumerate 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_open/.dirs/runtime 818s # test_open: 'dir1' 818s # test_open: 'dir_no-access' 818s # test_open: 'target-file' 818s # test_open: 'normal_file-symlink' 818s # test_open: 'executable_file' 818s # test_open: 'private_file' 818s # test_open: 'readonly_file' 818s # test_open: 'UTF_příliš z' 818s # test_open: 'pattern_file' 818s # test_open: 'not_exists' 818s # test_open: 'dir_no-execute/file' 818s # test_open: 'lost_symlink' 818s ok 6 /live-g-file/test_open 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_create/.dirs/runtime 818s # test_create: 'dir1' 818s # error code 3 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir1”: Is a directory 818s # test_create: 'dir1/subdir' 818s # error code 3 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir1/subdir”: Is a directory 818s # test_create: 'dir2' 818s # error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir2”: File exists 818s # test_create: 'normal_file' 818s # error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/normal_file”: File exists 818s # test_create: 'executable_file' 818s # test_create: 'private_file' 818s # test_create: 'normal_file2' 818s # test_create: 'UTF_příliš z' 818s # error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/UTF_příliš z”: File exists 818s # test_create: 'dir_příliš z' 818s # error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_příliš z”: File exists 818s # test_create: 'pattern_file' 818s # test_create: 'not_exists2' 818s # test_create: 'not_exists3' 818s # test_create: 'not_exists4' 818s ok 7 /live-g-file/test_create 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_copy_move/.dirs/runtime 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> 'dir-target' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> '.' 818s # res = 0, error code 2 = Target file exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> 'target-file' 818s # res = 0, error code 4 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/dir1/subdir”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> 'not_exists' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> 'dir_no-access' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir1/subdir' --> 'dir_no-write' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir2' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> 'dir-target' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> '.' 818s # res = 0, error code 2 = Target file exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> 'target-file' 818s # res = 0, error code 4 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/dir-target”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> 'not_exists' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> 'dir_no-access' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'dir-target' --> 'dir_no-write' 818s # res = 0, error code 25 = Can’t recursively copy directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/target-file”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/target-file”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/target-file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'target-file' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/target-file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> '.' 818s # res = 0, error code 2 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/normal_file-symlink: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> 'target-file' 818s # res = 0, error code 4 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/normal_file-symlink: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> 'not_exists' 818s # res = 0, error code 1 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/normal_file-symlink: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> 'dir_no-access' 818s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/normal_file-symlink: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file-symlink' --> 'dir_no-write' 818s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/normal_file-symlink: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/executable_file”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/executable_file”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/executable_file”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/executable_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'executable_file' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/executable_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/private_file”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/private_file”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/private_file”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/private_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'private_file' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/private_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/normal_file2”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/normal_file2”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/normal_file2”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/normal_file2”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'normal_file2' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/normal_file2”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/UTF_příliš z”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/UTF_příliš z”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/UTF_příliš z”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/UTF_příliš z”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'UTF_příliš z' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/UTF_příliš z”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> '.' 818s # res = 0, error code 2 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/pattern_file”: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> 'target-file' 818s # res = 0, error code 4 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/pattern_file”: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> 'not_exists' 818s # res = 0, error code 1 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/pattern_file”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> 'dir_no-access' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/pattern_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'pattern_file' --> 'dir_no-write' 818s # res = 0, error code 14 = Error opening file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/pattern_file”: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'dir-target' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> '.' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'target-file' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'not_exists' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'dir_no-access' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'dir_no-write' 818s # res = 0, error code 1 = Error when getting information for file “/tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists”: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'not_exists' --> 'dir-target' 818s # res = 0, error code 1 = Error moving file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> 'dir-target' 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> '.' 818s # res = 0, error code 2 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/lost_symlink: File exists 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> 'target-file' 818s # res = 0, error code 4 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/target-file/lost_symlink: Not a directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> 'not_exists' 818s # res = 0, error code 1 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists/lost_symlink: No such file or directory 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> 'dir_no-access' 818s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-access/lost_symlink: Permission denied 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s # do_copy_move: 'lost_symlink' --> 'dir_no-write' 818s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-write/lost_symlink: Permission denied 818s ok 8 /live-g-file/test_copy_move 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_delete/.dirs/runtime 818s # Deleting dir1, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir1 818s # result = 0, error = Error removing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir1: Directory not empty 818s # Deleting dir2, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir2 818s # result = 0, error = Error removing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir2: No such file or directory 818s # Deleting executable_file, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/executable_file 818s # result = 0, error = Error trashing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/executable_file: No such file or directory 818s # Deleting readonly_file, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/readonly_file 818s # Deleting dir_příliš z, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_příliš z 818s # Deleting not_exists, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists 818s # result = 0, error = Error removing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists: No such file or directory 818s # Deleting not_exists, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists 818s # result = 0, error = Error trashing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/not_exists: No such file or directory 818s # Deleting dir_no-execute/file, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-execute/file 818s # result = 0, error = Error removing file /tmp/test_live-g-file_U69HK3/testdir_live-g-file/dir_no-execute/file: No such file or directory 818s # Deleting lost_symlink, path = /tmp/test_live-g-file_U69HK3/testdir_live-g-file/lost_symlink 818s ok 9 /live-g-file/test_delete 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_make_directory_with_parents/.dirs/runtime 818s # We do not have CAP_DAC_OVERRIDE or equivalent 818s ok 10 /live-g-file/test_make_directory_with_parents 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/final_clean/.dirs/runtime 818s # Cleaning target testing structure in '/tmp/test_live-g-file_U69HK3/testdir_live-g-file'... 818s # deleting 'dir1' 818s # deleting 'subdir' 818s # deleting 'dir-target' 818s # deleting 'dir2' 818s # deleting 'target-file' 818s # deleting 'normal_file-symlink' 818s # deleting 'pattern_file' 818s # deleting 'executable_file' 818s # deleting 'private_file' 818s # deleting 'normal_file2' 818s # deleting 'UTF_příliš z' 818s # deleting 'lost_symlink' 818s # deleting 'dir_no-access' 818s # deleting 'dir_no-write' 818s # deleting 'target-file' 818s # deleting 'normal_file' 818s # deleting 'normal_file-symlink' 818s # deleting 'executable_file~' 818s # deleting 'private_file' 818s # deleting 'normal_file2~' 818s # deleting 'a' 818s # deleting 'UTF_příliš z' 818s # deleting 'dir_hidden' 818s # deleting '.a-hidden-file' 818s # deleting 'file-in-.hidden1' 818s # deleting '.hidden' 818s # deleting 'file-in-.hidden2' 818s # deleting 'pattern_file' 818s # deleting 'executable_file' 818s # deleting 'normal_file2' 818s # deleting 'not_exists2' 818s # deleting 'not_exists3' 818s # deleting 'not_exists4' 818s ok 11 /live-g-file/final_clean 818s # Start of test_unix_is_mountpoint tests 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/runtime 818s ok 12 /live-g-file/test_unix_is_mountpoint/sysroot 818s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/home 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/cache 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-config1:/tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-config2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/config 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-data1:/tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-data2 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/data 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/state 818s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_U69HK3/live-g-file/test_unix_is_mountpoint/proc/.dirs/runtime 818s ok 13 /live-g-file/test_unix_is_mountpoint/proc 818s # End of test_unix_is_mountpoint tests 818s # End of live-g-file tests 818s ok - glib/live-g-file.test 818s # Running test: glib/permission.test 818s ok - glib/permission.test 818s # Running test: glib/objects-refcount2.test 818s TAP version 14 818s # random seed: R02Sd685b460e218c3d14a824c4801208dec 818s 1..1 818s # Start of permission tests 818s ok 1 /permission/simple 818s # End of permission tests 818s TAP version 14 818s # random seed: R02Sd2b6959afed84994aedbb28ea605989e 818s 1..1 818s # Start of gobject tests 818s # Start of refcount tests 818s # init 0x1f34f9c9dd70 818s # 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 818s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # Executing: glib/objects-refcount2.test 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 819s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 820s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 821s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 822s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 823s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # Executing: glib/objects-refcount2.test 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 824s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 825s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 826s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 827s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 828s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # Executing: glib/objects-refcount2.test 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 829s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 830s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 831s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 832s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 833s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # Executing: glib/objects-refcount2.test 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 834s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 835s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 836s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 837s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 838s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # Executing: glib/objects-refcount2.test 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 839s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 840s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 841s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 842s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 843s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # Executing: glib/objects-refcount2.test 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 844s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 845s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 846s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 847s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 848s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # Executing: glib/objects-refcount2.test 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 849s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 850s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 851s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 852s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 853s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # Executing: glib/objects-refcount2.test 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 854s # . 855s # . 855s # . 855s # . 855s # dispose 0x1f34f9c9dd70! 855s # 855s ok 1 /gobject/refcount/object-advanced 855s # slow test /gobject/refcount/object-advanced executed in 36.68 secs 855s # End of refcount tests 855s # End of gobject tests 855s ok - glib/objects-refcount2.test 855s # Running test: glib/unix-streams.test 855s TAP version 14 855s # random seed: R02S7c487cc09c95e1bff31e0b658be368d7 855s 1..9 855s # Start of unix-streams tests 855s ok 1 /unix-streams/basic 855s ok 2 /unix-streams/pipe-io-test 855s # slow test /unix-streams/pipe-io-test executed in 0.50 secs 856s ok 3 /unix-streams/nonblocking-io-test 856s # slow test /unix-streams/nonblocking-io-test executed in 0.50 secs 856s ok 4 /unix-streams/read_write 856s ok 5 /unix-streams/read_writev 856s ok 6 /unix-streams/write-wouldblock 856s ok 7 /unix-streams/writev-wouldblock 856s ok 8 /unix-streams/write-async-wouldblock 856s ok 9 /unix-streams/writev-async-wouldblock 856s # End of unix-streams tests 856s ok - glib/unix-streams.test 856s # Running test: glib/macros-c-17.test 856s TAP version 14 856s # random seed: R02Sd955301c5ddc402e7d81834fd1ab75b7 856s 1..4 856s # Start of C tests 856s ok 1 /C/standard-17 856s # End of C tests 856s # Start of alignof tests 856s ok 2 /alignof/fallback 856s # End of alignof tests 856s # Start of assert tests 856s ok 3 /assert/static 856s # End of assert tests 856s # Start of struct tests 856s ok 4 /struct/sizeof_member 856s # End of struct tests 856s ok - glib/macros-c-17.test 856s # Running test: glib/1bit-mutex.test 856s TAP version 14 856s # random seed: R02Sbb9e2051cc6e49132670e9a40ba0f3d1 856s 1..2 856s # Start of glib tests 856s # Start of 1bit-mutex tests 859s # Executing: glib/1bit-mutex.test 861s ok 1 /glib/1bit-mutex/int 861s # slow test /glib/1bit-mutex/int executed in 5.15 secs 864s # Executing: glib/1bit-mutex.test 866s ok - glib/1bit-mutex.test 866s ok 2 /glib/1bit-mutex/pointer 866s # slow test /glib/1bit-mutex/pointer executed in 5.00 secs 866s # End of 1bit-mutex tests 866s # End of glib tests 866s # Running test: glib/callable-info.test 866s ok - glib/callable-info.test 866s TAP version 14 866s # random seed: R02S288d9da8e0082cf64caed8c3476349ea 866s 1..6 866s # Start of callable-info tests 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/sync-function/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s ok 1 /callable-info/sync-function 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/async-function/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s ok 2 /callable-info/async-function 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/is-method/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s ok 3 /callable-info/is-method 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/static-method/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s ok 4 /callable-info/static-method 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/static-vfunc/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s # Bug Reference: https://gitlab.gnome.org/GNOME/gobject-introspection/-/merge_requests/361 866s ok 5 /callable-info/static-vfunc # SKIP g-ir-scanner is not new enough 866s # Start of platform tests 866s # Start of unix tests 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/system-config1:/tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/system-data1:/tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_BJXIK3/callable-info/platform/unix/is-method/.dirs/runtime 866s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 866s # Checking DesktopAppInfo in Gio 866s # Checking DesktopAppInfo in GioUnix 866s ok 6 /callable-info/platform/unix/is-method 866s # End of unix tests 866s # End of platform tests 866s # End of callable-info tests 866s # Running test: glib/strvbuilder.test 866s ok - glib/strvbuilder.test 866s # Running test: glib/types.test 866s ok - glib/types.test 866s # Running test: glib/sandbox.test 866s TAP version 14 866s # random seed: R02Se9d176856baff79361ac39ecfd74a742 866s 1..7 866s # Start of strvbuilder tests 866s ok 1 /strvbuilder/empty 866s ok 2 /strvbuilder/add 866s ok 3 /strvbuilder/addv 866s ok 4 /strvbuilder/add_many 866s ok 5 /strvbuilder/take 866s ok 6 /strvbuilder/ref 866s ok 7 /strvbuilder/unref_to_strv 866s # End of strvbuilder tests 866s TAP version 14 866s # random seed: R02S37b2b9d077b67bfb68f34bc06728d770 866s 1..1 866s # Start of types tests 866s ok 1 /types/basic_types 866s # End of types tests 866s TAP version 14 866s # random seed: R02Sca5f38d63f90322451154f21009fdf79 866s 1..4 866s # Start of sandbox tests 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/system-config1:/tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/system-data1:/tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_AF9JK3/sandbox/none/.dirs/runtime 866s ok 1 /sandbox/none 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/system-config1:/tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/system-data1:/tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_AF9JK3/sandbox/snap/.dirs/runtime 866s # Created snap.yaml in /tmp/test_sandbox_AF9JK3/snap/current/meta/snap.yaml 866s ok 2 /sandbox/snap 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/system-config1:/tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/system-data1:/tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_AF9JK3/sandbox/classic-snap/.dirs/runtime 866s # Created snap.yaml in /tmp/test_sandbox_AF9JK3/snap/current/meta/snap.yaml 866s ok 3 /sandbox/classic-snap 866s ok - glib/sandbox.test 866s # Running test: glib/overflow-fallback.test 866s ok - glib/overflow-fallback.test 866s # Running test: glib/thread-deprecated.test 866s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/home 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/cache 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/system-config1:/tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/system-config2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/config 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/system-data1:/tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/system-data2 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/data 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/state 866s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/runtime 866s # Creating .flatpak-info in /tmp/test_sandbox_AF9JK3/sandbox/flatpak/.dirs/runtime/.flatpak-info 866s ok 4 /sandbox/flatpak 866s # End of sandbox tests 866s TAP version 14 866s # random seed: R02See319ab861350d74e4e2855518bddd8d 866s 1..6 866s # Start of glib tests 866s # Start of checked-math tests 866s ok 1 /glib/checked-math/guint-add 866s ok 2 /glib/checked-math/guint-mul 866s ok 3 /glib/checked-math/guint64-add 866s ok 4 /glib/checked-math/guint64-mul 866s ok 5 /glib/checked-math/gsize-add 866s ok 6 /glib/checked-math/gsize-mul 866s # End of checked-math tests 866s # End of glib tests 866s TAP version 14 866s # random seed: R02S390ee2b9609213c14bb58b2f02f38b6f 866s 1..6 866s # Start of thread tests 866s ok 1 /thread/mutex 866s ok 2 /thread/static-rec-mutex 869s # Executing: glib/thread-deprecated.test 871s ok 3 /thread/static-private 871s # slow test /thread/static-private executed in 4.41 secs 874s # Executing: glib/thread-deprecated.test 876s ok 4 /thread/static-rw-lock 876s # slow test /thread/static-rw-lock executed in 5.00 secs 876s ok 5 /thread/once 879s # Executing: glib/thread-deprecated.test 884s # Executing: glib/thread-deprecated.test 886s ok 6 /thread/rerun-all 886s # slow test /thread/rerun-all executed in 10.02 secs 886s # End of thread tests 886s ok - glib/thread-deprecated.test 886s # Running test: glib/test-printf.test 886s TAP version 14 886s # random seed: R02Sc34b16df246daacfed75ffd53fcc7f8e 886s 1..24 886s # Start of snprintf tests 886s ok 1 /snprintf/retval-and-trunc 886s ok 2 /snprintf/%d 886s ok 3 /snprintf/%d-invalid 886s ok 4 /snprintf/%o 886s ok 5 /snprintf/%u 886s ok 6 /snprintf/%x 886s ok 7 /snprintf/%X 886s ok 8 /snprintf/%f 886s ok 9 /snprintf/%e 886s ok 10 /snprintf/%c 886s ok 11 /snprintf/%s 886s ok 12 /snprintf/%n 886s ok 13 /snprintf/test-percent 886s ok 14 /snprintf/test-positional-params 886s ok 15 /snprintf/test-64bit 886s ok 16 /snprintf/produce-embedded-nulls 886s # End of snprintf tests 886s # Start of printf tests 886s ok 17 /printf/test-percent 886s ok 18 /printf/test-positional-params 886s ok 19 /printf/test-64bit 886s # Start of test-64bit tests 886s # Start of subprocess tests 886s ok - glib/test-printf.test 886s # Running test: glib/markup-escape.test 886s ok - glib/markup-escape.test 886s # Running test: glib/registered-type-info.test 886s ok - glib/registered-type-info.test 886s # Running test: glib/utils-c-17.test 886s # End of subprocess tests 886s # End of test-64bit tests 886s # End of printf tests 886s # Start of fprintf tests 886s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3761 886s # /fprintf/produce-embedded-nulls summary: printf() functions can produce strings with embedded null characters. That happens when passing individual characters (%c) with value ' 886s ok 20 /fprintf/produce-embedded-nulls 886s # End of fprintf tests 886s # Start of sprintf tests 886s ok 21 /sprintf/test-positional-params 886s ok 22 /sprintf/upper-bound 886s # End of sprintf tests 886s # Start of vasprintf tests 886s # /vasprintf/invalid-format-placeholder summary: Test error handling for invalid format placeholder in g_vasprintf() 886s ok 23 /vasprintf/invalid-format-placeholder 886s # /vasprintf/invalid-wide-string summary: Test error handling for invalid wide strings in g_vasprintf() 886s ok 24 /vasprintf/invalid-wide-string 886s # End of vasprintf tests 886s TAP version 14 886s # random seed: R02Sad988e2bce94be61425b5e8372205b1d 886s 1..41 886s # Start of markup tests 886s ok 1 /markup/format 886s # Start of escape-text tests 886s ok 2 /markup/escape-text/0 886s ok 3 /markup/escape-text/1 886s ok 4 /markup/escape-text/2 886s ok 5 /markup/escape-text/3 886s ok 6 /markup/escape-text/4 886s ok 7 /markup/escape-text/5 886s ok 8 /markup/escape-text/6 886s ok 9 /markup/escape-text/7 886s ok 10 /markup/escape-text/8 886s ok 11 /markup/escape-text/9 886s ok 12 /markup/escape-text/10 886s ok 13 /markup/escape-text/11 886s ok 14 /markup/escape-text/12 886s ok 15 /markup/escape-text/13 886s ok 16 /markup/escape-text/14 886s ok 17 /markup/escape-text/15 886s ok 18 /markup/escape-text/16 886s ok 19 /markup/escape-text/17 886s ok 20 /markup/escape-text/18 886s ok 21 /markup/escape-text/19 886s ok 22 /markup/escape-text/20 886s ok 23 /markup/escape-text/21 886s ok 24 /markup/escape-text/22 886s # End of escape-text tests 886s # Start of escape-unichar tests 886s ok 25 /markup/escape-unichar/0 886s ok 26 /markup/escape-unichar/1 886s ok 27 /markup/escape-unichar/2 886s ok 28 /markup/escape-unichar/3 886s ok 29 /markup/escape-unichar/4 886s ok 30 /markup/escape-unichar/5 886s ok 31 /markup/escape-unichar/6 886s ok 32 /markup/escape-unichar/7 886s ok 33 /markup/escape-unichar/8 886s ok 34 /markup/escape-unichar/9 886s ok 35 /markup/escape-unichar/10 886s ok 36 /markup/escape-unichar/11 886s ok 37 /markup/escape-unichar/12 886s ok 38 /markup/escape-unichar/13 886s ok 39 /markup/escape-unichar/14 886s ok 40 /markup/escape-unichar/15 886s ok 41 /markup/escape-unichar/16 886s # End of escape-unichar tests 886s # End of markup tests 886s TAP version 14 886s # random seed: R02Sc6cef1cbd652dc82921c9b963bb5e938 886s 1..1 886s # Start of registered-type-info tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/system-config1:/tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/system-data1:/tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_registered-type-info_IACGK3/registered-type-info/boxed/.dirs/runtime 886s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 886s # /registered-type-info/boxed summary: Test various boxed and non-boxed types for GIRegisteredTypeInfo 886s # Expecting CClosure to not be boxed 886s # Expecting TypeCValue to not be boxed 886s # Expecting InitiallyUnownedClass to not be boxed 886s # Expecting BookmarkFile to be boxed 886s # Expecting Closure to be boxed 886s # Expecting Object to not be boxed 886s ok 1 /registered-type-info/boxed 886s # End of registered-type-info tests 886s TAP version 14 886s # random seed: R02S34abc1895bd6af9cb066ffbecf0988f4 886s 1..41 886s # Start of utils tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/language-names/.dirs/runtime 886s ok 1 /utils/language-names 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/locale-variants/.dirs/runtime 886s # Testing locale ‘en’ 886s # Testing locale ‘sr@latin’ 886s # Testing locale ‘fr_BE’ 886s # Testing locale ‘sr_SR@latin’ 886s # Testing locale ‘sr_SR@latin.UTF-8’ 886s # Testing locale ‘sr@latin_invalid’ 886s # Testing locale ‘sr.UTF-8@latin’ 886s # Testing locale ‘sr.UTF-8_latin’ 886s # Testing locale ‘sr.UTF-8@latin_invalid’ 886s ok 2 /utils/locale-variants 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/version/.dirs/runtime 886s ok 3 /utils/version 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/appname/.dirs/runtime 886s ok 4 /utils/appname 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/prgname-thread-safety/.dirs/runtime 886s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 886s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 886s ok 5 /utils/prgname-thread-safety 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/tmpdir/.dirs/runtime 886s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 886s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/tmpdir: No such file or directory 886s ok 6 /utils/tmpdir 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/basic_bits/.dirs/runtime 886s ok 7 /utils/basic_bits 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/bits/.dirs/runtime 886s ok 8 /utils/bits 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/swap/.dirs/runtime 886s ok 9 /utils/swap 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/find-program/.dirs/runtime 886s ok 10 /utils/find-program 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/find-program-for-path/.dirs/runtime 886s ok 11 /utils/find-program-for-path 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/debug/.dirs/runtime 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/debug: No such file or directory 886s ok 12 /utils/debug 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/codeset/.dirs/runtime 886s ok 13 /utils/codeset 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/codeset2/.dirs/runtime 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/codeset2: No such file or directory 886s ok 14 /utils/codeset2 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/console-charset/.dirs/runtime 886s ok 15 /utils/console-charset 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/gettext/.dirs/runtime 886s ok 16 /utils/gettext 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/username/.dirs/runtime 886s ok 17 /utils/username 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/realname/.dirs/runtime 886s ok 18 /utils/realname 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/hostname/.dirs/runtime 886s ok 19 /utils/hostname 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/os-info/.dirs/runtime 886s # NAME: Ubuntu 886s ok 20 /utils/os-info 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/.dirs/runtime 886s ok 21 /utils/clear-pointer 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer-cast/.dirs/runtime 886s ok 22 /utils/clear-pointer-cast 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/take-pointer/.dirs/runtime 886s ok 23 /utils/take-pointer 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-source/.dirs/runtime 886s ok 24 /utils/clear-source 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/misc-mem/.dirs/runtime 886s ok 25 /utils/misc-mem 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/.dirs/runtime 886s # /utils/aligned-mem summary: Aligned memory allocator 886s # Alignment must not be zero 886s # Alignment must be a power of two 886s # Alignment must be a multiple of sizeof(void*) 886s ok 26 /utils/aligned-mem 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/free-sized/.dirs/runtime 886s # /utils/free-sized summary: Check that g_free_sized() works 886s ok 27 /utils/free-sized 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/nullify/.dirs/runtime 886s ok 28 /utils/nullify 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/atexit/.dirs/runtime 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/atexit: No such file or directory 886s ok 29 /utils/atexit 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/config 886s ok - glib/utils-c-17.test 886s # Running test: glib/thread.test 886s ok - glib/thread.test 886s # Running test: glib/gi-inspect-typelib.py.test 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/check-setuid/.dirs/runtime 886s ok 30 /utils/check-setuid 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/int-limits/.dirs/runtime 886s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 886s ok 31 /utils/int-limits 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-list/.dirs/runtime 886s ok 32 /utils/clear-list 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-slist/.dirs/runtime 886s ok 33 /utils/clear-slist 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/steal-handle-id/.dirs/runtime 886s ok 34 /utils/steal-handle-id 886s # Start of user-special-dirs tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/desktop/.dirs/runtime 886s ok 35 /utils/user-special-dirs/desktop 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked/.dirs/runtime 886s # /utils/user-special-dirs/load-unlocked summary: Tests error and corner cases of user-dirs.dirs content. 886s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/4800 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/load-unlocked: No such file or directory 886s ok 36 /utils/user-special-dirs/load-unlocked 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks/.dirs/runtime 886s # /utils/user-special-dirs/reload-leaks summary: Tests that old user special dirs values are deliberately leaked on reload. 886s Unable to clean up temporary directory /tmp/test_utils-c-17_UW9FK3/utils/user-special-dirs/reload-leaks: No such file or directory 886s ok 37 /utils/user-special-dirs/reload-leaks 886s # End of user-special-dirs tests 886s # Start of clear-pointer tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/clear-pointer/side-effects/.dirs/runtime 886s ok 38 /utils/clear-pointer/side-effects 886s # End of clear-pointer tests 886s # Start of aligned-mem tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/alignment/.dirs/runtime 886s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 886s ok 39 /utils/aligned-mem/alignment 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/zeroed/.dirs/runtime 886s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 886s ok 40 /utils/aligned-mem/zeroed 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/system-config1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/system-data1:/tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-17_UW9FK3/utils/aligned-mem/free-sized/.dirs/runtime 886s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 886s ok 41 /utils/aligned-mem/free-sized 886s # Start of subprocess tests 886s # End of subprocess tests 886s # End of aligned-mem tests 886s # End of utils tests 886s TAP version 14 886s # random seed: R02Sf405d2162da98ef8532f9491e045500f 886s 1..7 886s # Start of thread tests 886s ok 1 /thread/thread1 886s ok 2 /thread/thread2 886s ok 3 /thread/thread3 886s ok 4 /thread/thread4 886s ok 5 /thread/thread5 886s ok 6 /thread/thread6 886s ok 7 /thread/thread7 886s # End of thread tests 886s TAP version 13 886s ok 1 __main__.TestGIInspectTypelibCommandLine.test_help 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpu236byp2 886s # Running: ['/usr/bin/gi-inspect-typelib', '--help'] 886s # Return code: 0 886s # Output: 886s # Usage: 886s # gi-inspect-typelib [OPTION…] NAMESPACE - Inspect GI typelib 886s # 886s # Help Options: 886s # -h, --help Show help options 886s # 886s # Application Options: 886s # --typelib-version=VERSION Typelib version to inspect 886s # --print-shlibs List the shared libraries the typelib requires 886s # --print-typelibs List other typelibs the inspected typelib requires 886s # Error: 886s ok 2 __main__.TestGIInspectTypelibCommandLine.test_invalid_typelib 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpwuldhuhm 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'AnInvalidNameSpace'] 886s # Return code: 1 886s # Output: 886s # 886s # Error: 886s # Failed to load typelib: Typelib file for namespace 'AnInvalidNameSpace' (any version) not found 886s ok 3 __main__.TestGIInspectTypelibCommandLine.test_no_args 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmp_f3vkrk2 886s # Running: ['/usr/bin/gi-inspect-typelib'] 886s # Return code: 1 886s # Output: 886s # 886s # Error: 886s # Please specify exactly one namespace 886s ok 4 __main__.TestGIInspectTypelibForGLibTypelib.test_print_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpf2hvp19d 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'GLib', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgobject-2.0.so.0 886s # shlib: libglib-2.0.so.0 886s # Error: 886s ok 5 __main__.TestGIInspectTypelibForGLibTypelib.test_print_typelibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmp84i9rofz 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'GLib', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # 886s # Error: 886s ok 6 __main__.TestGIInspectTypelibForGLibTypelib.test_print_typelibs_and_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpwl0iaw53 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'GLib', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgobject-2.0.so.0 886s # shlib: libglib-2.0.so.0 886s # Error: 886s ok 7 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpq752a07z 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'GObject', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgobject-2.0.so.0 886s # Error: 886s ok 8 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_typelibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpmhq7oo2z 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'GObject', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # typelib: GLib-2.0 886s # Error: 886s ok 9 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_typelibs_and_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpc29q3w1m 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'GObject', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgobject-2.0.so.0 886s # typelib: GLib-2.0 886s # Error: 886s ok 10 __main__.TestGIInspectTypelibForGioTypelib.test_print_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpikvgmt69 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'Gio', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgio-2.0.so.0 886s # Error: 886s ok 11 __main__.TestGIInspectTypelibForGioTypelib.test_print_typelibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpt28i79d8 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'Gio', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # typelib: GObject-2.0 886s # typelib: GLib-2.0 886s # typelib: GModule-2.0 886s # Error: 886s ok 12 __main__.TestGIInspectTypelibForGioTypelib.test_print_typelibs_and_shlibs 886s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 886s # tmpdir: /tmp/tmpnzar5sri 886s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'Gio', '--typelib-version=2.0'] 886s # Return code: 0 886s # Output: 886s # shlib: libgio-2.0.so.0 886s # typelib: GObject-2.0 886s # typelib: GLib-2.0 886s # typelib: GModule-2.0 886s # Error: 886s 1..12 886s TAP version 14 886s # random seed: R02Sa2e1c3e529edab9d51e3bde56f09c080 886s 1..42 886s # Start of tls-interaction tests 886s # Start of ask-password tests 886s # Start of invoke-with-loop tests 886s ok 1 /tls-interaction/ask-password/invoke-with-loop/unhandled-implementation 886s ok 2 /tls-interaction/ask-password/invoke-with-loop/async-implementation-success 886s ok 3 /tls-interaction/ask-password/invoke-with-loop/async-implementation-failure 886s ok 4 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-success 886s ok 5 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-failure 886s # End of invoke-with-loop tests 886s # Start of invoke-without-loop tests 886s ok 6 /tls-interaction/ask-password/invoke-without-loop/unhandled-implementation 886s ok 7 /tls-interaction/ask-password/invoke-without-loop/async-implementation-success 886s ok 8 /tls-interaction/ask-password/invoke-without-loop/async-implementation-failure 886s ok 9 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-success 886s ok 10 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-failure 886s # End of invoke-without-loop tests 886s # Start of invoke-in-loop tests 886s ok 11 /tls-interaction/ask-password/invoke-in-loop/unhandled-implementation 886s ok 12 /tls-interaction/ask-password/invoke-in-loop/async-implementation-success 886s ok 13 /tls-interaction/ask-password/invoke-in-loop/async-implementation-failure 886s ok 14 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-success 886s ok 15 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-failure 886s # End of invoke-in-loop tests 886s # Start of sync tests 886s ok 16 /tls-interaction/ask-password/sync/unhandled-implementation 886s ok 17 /tls-interaction/ask-password/sync/sync-implementation-success 886s ok 18 /tls-interaction/ask-password/sync/sync-implementation-failure 886s # End of sync tests 886s # Start of async tests 886s ok 19 /tls-interaction/ask-password/async/unhandled-implementation 886s ok 20 /tls-interaction/ask-password/async/async-implementation-success 886s ok 21 /tls-interaction/ask-password/async/async-implementation-failure 886s # End of async tests 886s # End of ask-password tests 886s # Start of request-certificate tests 886s # Start of invoke-with-loop tests 886s ok 22 /tls-interaction/request-certificate/invoke-with-loop/unhandled-implementation 886s ok 23 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-success 886s ok 24 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-failure 886s ok 25 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-success 886s ok 26 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-failure 886s # End of invoke-with-loop tests 886s # Start of invoke-without-loop tests 886s ok 27 /tls-interaction/request-certificate/invoke-without-loop/unhandled-implementation 886s ok 28 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-success 886s ok 29 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-failure 886s ok 30 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-success 886s ok 31 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-failure 886s # End of invoke-without-loop tests 886s # Start of invoke-in-loop tests 886s ok 32 /tls-interaction/request-certificate/invoke-in-loop/unhandled-implementation 886s ok 33 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-success 886s ok 34 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-failure 886s ok 35 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-success 886s ok 36 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-failure 886s # End of invoke-in-loop tests 886s # Start of sync tests 886s ok 37 /tls-interaction/request-certificate/sync/unhandled-implementation 886s ok 38 /tls-interaction/request-certificate/sync/sync-implementation-success 886s ok 39 /tls-interaction/request-certificate/sync/sync-implementation-failure 886s ok - glib/gi-inspect-typelib.py.test 886s # Running test: glib/tls-interaction.test 886s # End of sync tests 886s # Start of async tests 886s ok 40 /tls-interaction/request-certificate/async/unhandled-implementation 886s ok 41 /tls-interaction/request-certificate/async/async-implementation-success 886s ok 42 /tls-interaction/request-certificate/async/async-implementation-failure 886s # End of async tests 886s # End of request-certificate tests 886s # End of tls-interaction tests 886s ok - glib/tls-interaction.test 886s # Running test: glib/cache.test 886s ok - glib/cache.test 886s # Running test: glib/gdbus-connection-loss.test 886s TAP version 14 886s # random seed: R02Sa00a3350b94b0ce42e40aaedec850b18 886s 1..1 886s # Start of cache tests 886s ok 1 /cache/basic 886s # End of cache tests 886s TAP version 14 886s # random seed: R02S42a2cd96c4a21ef5698ed82f8d4b6308 886s 1..1 886s # Start of gdbus tests 886s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/home 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/cache 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/system-config1:/tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/system-config2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/config 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/system-data1:/tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/system-data2 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/data 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/state 886s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-loss_5DEPK3/gdbus/connection-loss/.dirs/runtime 886s ok - glib/gdbus-connection-loss.test 886s ok 1 /gdbus/connection-loss 886s # End of gdbus tests 886s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 886s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 886s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 886s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 886s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 886s TAP version 14 886s # random seed: R02S3baf40d56cb0ab8f82a52200f80f0254 886s 1..14 886s # Start of contenttype tests 886s ok 1 /contenttype/guess 886s ok 2 /contenttype/guess_svg_from_data 886s ok 3 /contenttype/mime_to_content # SKIP mime from content type test not implemented on UNIX 886s ok 4 /contenttype/mime_from_content # SKIP mime from content type test not implemented on UNIX 886s ok 5 /contenttype/unknown 886s ok 6 /contenttype/subtype 886s # Running test: glib/contenttype.test 886s ok 7 /contenttype/list 886s ok 8 /contenttype/executable 886s ok 9 /contenttype/description 886s ok 10 /contenttype/icon 886s ok 11 /contenttype/symbolic-icon 886s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 886s ok 12 /contenttype/tree 886s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3168 886s ok - glib/contenttype.test 886s # Running test: glib/value.test 886s ok 13 /contenttype/tree_invalid_encoding 886s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=782311 886s ok 14 /contenttype/test_type_is_a_special_case 886s # End of contenttype tests 886s TAP version 14 886s # random seed: R02Scde95dddd182f2ca4b2248d5626b5318 886s 1..9 886s # Start of value tests 886s ok 1 /value/basic 886s ok 2 /value/collection 886s ok 3 /value/copying 886s ok 4 /value/enum-transformation 886s ok 5 /value/gtype 886s # /value/string summary: Test that G_TYPE_STRING GValue copy properly 886s ok 6 /value/string 886s # Next: GObject object in GValue of GObject to GValue of GObject 886s # Next: GObject object in GValue of GObject to GValue of TestInterface 886s # Next: GObject object in GValue of GObject to GValue of TestObjectA 886s # Next: GObject object in GValue of GObject to GValue of TestObjectB 886s # Next: GObject object in GValue of GObject to GValue of TestObjectA1 886s # Next: GObject object in GValue of GObject to GValue of TestObjectA2 886s # Next: TestObjectA object in GValue of GObject to GValue of GObject 886s # Next: TestObjectA object in GValue of GObject to GValue of TestInterface 886s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA 886s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectB 886s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA1 886s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA2 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of GObject 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestInterface 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectB 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA1 886s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA2 886s # Next: TestObjectB object in GValue of GObject to GValue of GObject 886s # Next: TestObjectB object in GValue of GObject to GValue of TestInterface 886s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA 886s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectB 886s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA1 886s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA2 886s # Next: TestObjectB object in GValue of TestInterface to GValue of GObject 886s # Next: TestObjectB object in GValue of TestInterface to GValue of TestInterface 886s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA 886s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectB 886s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA1 886s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA2 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of GObject 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestInterface 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectB 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA1 886s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA2 886s # Next: TestObjectA1 object in GValue of GObject to GValue of GObject 886s # Next: TestObjectA1 object in GValue of GObject to GValue of TestInterface 886s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA 886s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectB 886s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA1 886s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA2 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of GObject 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestInterface 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectB 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA1 886s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA2 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of GObject 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestInterface 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectB 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA1 886s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA2 886s # Next: TestObjectA2 object in GValue of GObject to GValue of GObject 886s # Next: TestObjectA2 object in GValue of GObject to GValue of TestInterface 886s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA 886s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectB 886s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA1 886s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA2 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of GObject 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestInterface 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectB 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA1 886s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA2 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of GObject 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestInterface 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectB 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA1 886s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA2 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of GObject 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestInterface 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectB 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA1 886s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA2 886s ok 7 /value/transform-object 886s # Start of array tests 886s ok 8 /value/array/basic 886s ok 9 /value/array/sort-with-data 886s # End of array tests 886s # End of value tests 886s ok - glib/value.test 886s # Running test: glib/cond.test 886s TAP version 14 886s # random seed: R02Sf9646344ebe4691137d25bdd9d25ab76 886s 1..4 886s # Start of thread tests 886s ok 1 /thread/cond1 886s ok 2 /thread/cond2 886s # Start of cond tests 887s ok 3 /thread/cond/wait-until 887s # slow test /thread/cond/wait-until executed in 1.02 secs 887s # Start of wait-until tests 887s # /thread/cond/wait-until/contended-and-interrupted summary: Check proper handling of errno in g_cond_wait_until with a contended mutex 887s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/957 888s ok - glib/cond.test 888s # Running test: glib/utf8-performance.test 888s ok - glib/utf8-performance.test 888s ok 4 /thread/cond/wait-until/contended-and-interrupted 888s # slow test /thread/cond/wait-until/contended-and-interrupted executed in 1.10 secs 888s # End of wait-until tests 888s # End of cond tests 888s # End of thread tests 888s TAP version 14 888s # random seed: R02Se9c862bc02f72382ef47bc58e3af6cd9 888s 1..36 888s # Start of utf8 tests 888s # Start of perf tests 888s # Start of get_char tests 888s # max perf: 21.5 MB/s 888s ok 1 /utf8/perf/get_char/ascii 888s # max perf: 67.0 MB/s 888s ok 2 /utf8/perf/get_char/latin1 888s # max perf: inf MB/s 888s ok 3 /utf8/perf/get_char/cyrillic 888s # max perf: inf MB/s 888s ok 4 /utf8/perf/get_char/han 888s # End of get_char tests 888s # Start of get_char-backwards tests 888s # max perf: 43.0 MB/s 888s ok 5 /utf8/perf/get_char-backwards/ascii 888s # max perf: 67.0 MB/s 888s ok 6 /utf8/perf/get_char-backwards/latin1 888s # max perf: 160.0 MB/s 888s ok 7 /utf8/perf/get_char-backwards/cyrillic 888s # max perf: 156.0 MB/s 888s ok 8 /utf8/perf/get_char-backwards/han 888s # End of get_char-backwards tests 888s # Start of get_char_validated tests 888s # max perf: 43.0 MB/s 888s ok 9 /utf8/perf/get_char_validated/ascii 888s # max perf: 67.0 MB/s 888s ok 10 /utf8/perf/get_char_validated/latin1 888s # max perf: 160.0 MB/s 888s ok 11 /utf8/perf/get_char_validated/cyrillic 888s # max perf: 156.0 MB/s 888s ok 12 /utf8/perf/get_char_validated/han 888s # End of get_char_validated tests 888s # Start of utf8_to_ucs4 tests 888s # max perf: 43.0 MB/s 888s ok 13 /utf8/perf/utf8_to_ucs4/ascii 888s # max perf: 67.0 MB/s 888s ok 14 /utf8/perf/utf8_to_ucs4/latin1 888s # max perf: 160.0 MB/s 888s ok 15 /utf8/perf/utf8_to_ucs4/cyrillic 888s # max perf: 156.0 MB/s 888s ok 16 /utf8/perf/utf8_to_ucs4/han 888s # End of utf8_to_ucs4 tests 888s # Start of utf8_to_ucs4-sized tests 888s # max perf: 43.0 MB/s 888s ok 17 /utf8/perf/utf8_to_ucs4-sized/ascii 888s # max perf: 67.0 MB/s 888s ok 18 /utf8/perf/utf8_to_ucs4-sized/latin1 888s # max perf: 160.0 MB/s 888s ok 19 /utf8/perf/utf8_to_ucs4-sized/cyrillic 888s # max perf: inf MB/s 888s ok 20 /utf8/perf/utf8_to_ucs4-sized/han 888s # End of utf8_to_ucs4-sized tests 888s # Start of utf8_to_ucs4_fast tests 888s # max perf: inf MB/s 888s ok 21 /utf8/perf/utf8_to_ucs4_fast/ascii 888s # max perf: inf MB/s 888s ok 22 /utf8/perf/utf8_to_ucs4_fast/latin1 888s # max perf: 160.0 MB/s 888s ok 23 /utf8/perf/utf8_to_ucs4_fast/cyrillic 888s # max perf: 156.0 MB/s 888s ok 24 /utf8/perf/utf8_to_ucs4_fast/han 888s # End of utf8_to_ucs4_fast tests 888s # Start of utf8_to_ucs4_fast-sized tests 888s # max perf: inf MB/s 888s ok 25 /utf8/perf/utf8_to_ucs4_fast-sized/ascii 888s # max perf: 67.0 MB/s 888s ok 26 /utf8/perf/utf8_to_ucs4_fast-sized/latin1 888s # max perf: 160.0 MB/s 888s ok 27 /utf8/perf/utf8_to_ucs4_fast-sized/cyrillic 888s # max perf: 156.0 MB/s 888s ok 28 /utf8/perf/utf8_to_ucs4_fast-sized/han 888s # End of utf8_to_ucs4_fast-sized tests 888s # Start of utf8_validate tests 888s # max perf: 43.0 MB/s 888s ok 29 /utf8/perf/utf8_validate/ascii 888s # max perf: 67.0 MB/s 888s ok 30 /utf8/perf/utf8_validate/latin1 888s # max perf: 160.0 MB/s 888s ok 31 /utf8/perf/utf8_validate/cyrillic 888s # max perf: inf MB/s 888s ok 32 /utf8/perf/utf8_validate/han 888s # End of utf8_validate tests 888s # Start of utf8_validate-sized tests 888s # max perf: inf MB/s 888s ok 33 /utf8/perf/utf8_validate-sized/ascii 888s # max perf: inf MB/s 888s ok 34 /utf8/perf/utf8_validate-sized/latin1 888s # max perf: 160.0 MB/s 888s ok 35 /utf8/perf/utf8_validate-sized/cyrillic 888s # max perf: inf MB/s 888s ok 36 /utf8/perf/utf8_validate-sized/han 888s # End of utf8_validate-sized tests 888s # End of perf tests 888s # End of utf8 tests 888s # Running test: glib/memory-monitor-portal.test 889s TAP version 13 889s ok 1 __main__.TestLowMemoryMonitorPortal.test_low_memory_warning_portal_signal # SKIP xdg-desktop-portal not available 889s 1..1 889s ok - glib/memory-monitor-portal.test 889s # Running test: glib/module-test-library.test 889s TAP version 14 889s # random seed: R02S30f0f7ac3411d57f46422defa29bc509 889s 1..3 889s # Start of module tests 889s ok 1 /module/basics 889s # /module/invalid-libtool-archive summary: Test that opening an invalid .la file fails 889s ok 2 /module/invalid-libtool-archive 889s # /module/local-binding summary: Test that binding a library's symbols locally does not add them globally 889s ok - glib/module-test-library.test 889s ok 3 /module/local-binding 889s # End of module tests 889s # Running test: glib/repository-search-paths.test 889s TAP version 14 889s # random seed: R02S417baab3b7aac9781913852fe833dcd6 889s ok - glib/repository-search-paths.test 889s # Running test: glib/search-utils.test 889s 1..4 889s # Start of repository tests 889s # Start of search-paths tests 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/system-config1:/tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/system-data1:/tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/default/.dirs/runtime 889s ok 1 /repository/search-paths/default 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/system-config1:/tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/system-data1:/tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_1TOAK3/repository/search-paths/prepend/.dirs/runtime 889s ok 2 /repository/search-paths/prepend 889s # End of search-paths tests 889s # Start of library-paths tests 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/system-config1:/tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/system-data1:/tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/default/.dirs/runtime 889s ok 3 /repository/library-paths/default 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/system-config1:/tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/system-data1:/tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_1TOAK3/repository/library-paths/prepend/.dirs/runtime 889s ok 4 /repository/library-paths/prepend 889s # End of library-paths tests 889s # End of repository tests 889s TAP version 14 889s ok - glib/search-utils.test 889s # Running test: glib/properties-introspection.test 889s # random seed: R02S22c55415264190a7badcc2c69a3afb96 889s # GLib-DEBUG: Current user locale: C.UTF-8 889s 1..6 889s # Start of search tests 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'he' - 'Hello World' should match: OK 889s # GLib-DEBUG: 'wo' - 'Hello World' should match: OK 889s # GLib-DEBUG: 'lo' - 'Hello World' should NOT match: OK 889s # GLib-DEBUG: 'ld' - 'Hello World' should NOT match: OK 889s # GLib-DEBUG: 'wo' - 'Hello-World' should match: OK 889s # GLib-DEBUG: 'wo' - 'HelloWorld' should NOT match: OK 889s ok 1 /search/basic 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 889s # GLib-DEBUG: 'gaetan' - 'Gaëtan' should match: OK 889s # GLib-DEBUG: 'ele' - 'élève' should match: OK 889s # GLib-DEBUG: 'AzaÏs' - 'Azais' should NOT match: OK 889s # GLib-DEBUG: 'Azais' - 'AzaÏs' should match: OK 889s ok 2 /search/composed 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'Jör' - 'Jorgen' should NOT match: OK 889s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 889s ok 3 /search/decomposed 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'ist' - 'İstanbul' should match: OK 889s # GLib-DEBUG: 'diyarbakir' - 'Diyarbakır' should match: OK 889s ok 4 /search/turkish 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 889s # GLib-DEBUG: 'Jör' - 'Jorgen' should NOT match: OK 889s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 889s ok 5 /search/c_locale_unicode 889s # GLib-DEBUG: Started 889s # GLib-DEBUG: 'Xav Cla' - 'Xavier Claessens' should match: OK 889s # GLib-DEBUG: 'Cla Xav' - 'Xavier Claessens' should match: OK 889s # GLib-DEBUG: ' b ' - 'Foo Bar Baz' should match: OK 889s # GLib-DEBUG: 'bar bazz' - 'Foo Bar Baz' should NOT match: OK 889s ok 6 /search/multi_words 889s # End of search tests 889s TAP version 14 889s # random seed: R02S89b2e6ab6e8777bfea511da7172f42f0 889s 1..2 889s # Start of properties tests 889s # /properties/introspection summary: Verify that introspecting properties on an interface initializes the GParamSpecPool. 889s ok 1 /properties/introspection 889s # /properties/collision summary: Verify that multiple threads create a single GParamSpecPool. 889s ok - glib/properties-introspection.test 889s # Running test: glib/keyfile.test 889s ok 2 /properties/collision 889s # End of properties tests 889s TAP version 14 889s # random seed: R02S05dedaef3ec43d87e0a585548262e2b6 889s 1..36 889s # Start of keyfile tests 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/line-ends/.dirs/runtime 889s ok 1 /keyfile/line-ends 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/whitespace/.dirs/runtime 889s ok 2 /keyfile/whitespace 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/comments/.dirs/runtime 889s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3047 889s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/104 889s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3047 889s ok 3 /keyfile/comments 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/listing/.dirs/runtime 889s ok 4 /keyfile/listing 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/string/.dirs/runtime 889s ok 5 /keyfile/string 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/boolean/.dirs/runtime 889s ok 6 /keyfile/boolean 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/number/.dirs/runtime 889s ok 7 /keyfile/number 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/.dirs/runtime 889s ok 8 /keyfile/locale-string 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/lists/.dirs/runtime 889s ok 9 /keyfile/lists 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/lists-set-get/.dirs/runtime 889s ok 10 /keyfile/lists-set-get 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/group-remove/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165887 889s ok 11 /keyfile/group-remove 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/key-remove/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165980 889s ok 12 /keyfile/key-remove 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/groups/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=316309 889s ok 13 /keyfile/groups 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-keys/.dirs/runtime 889s ok 14 /keyfile/duplicate-keys 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=157877 889s ok 15 /keyfile/duplicate-groups 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/duplicate-groups2/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=385910 889s ok 16 /keyfile/duplicate-groups2 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/group-names/.dirs/runtime 889s ok 17 /keyfile/group-names 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/key-names/.dirs/runtime 889s ok 18 /keyfile/key-names 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/reload/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=420686 889s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2927 889s ok 19 /keyfile/reload 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/int64/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=614864 889s ok 20 /keyfile/int64 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/load/.dirs/runtime 889s ok 21 /keyfile/load 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/save/.dirs/runtime 889s ok 22 /keyfile/save 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/load-fail/.dirs/runtime 889s ok 23 /keyfile/load-fail 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/non-utf8/.dirs/runtime 889s ok 24 /keyfile/non-utf8 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/page-boundary/.dirs/runtime 889s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640695 889s ok 25 /keyfile/page-boundary 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/ref/.dirs/runtime 889s ok 26 /keyfile/ref 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/replace-value/.dirs/runtime 889s ok 27 /keyfile/replace-value 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/list-separator/.dirs/runtime 889s ok 28 /keyfile/list-separator 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/empty-string/.dirs/runtime 889s ok 29 /keyfile/empty-string 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/limbo/.dirs/runtime 889s ok 30 /keyfile/limbo 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/utf8/.dirs/runtime 889s # Testing invalid encoding ‘non-UTF-8’ 889s # Testing invalid encoding ‘UTF’ 889s # Testing invalid encoding ‘UTF-9’ 889s ok 31 /keyfile/utf8 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/roundtrip/.dirs/runtime 889s ok 32 /keyfile/roundtrip 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/bytes/.dirs/runtime 889s ok 33 /keyfile/bytes 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/get-locale/.dirs/runtime 889s ok 34 /keyfile/get-locale 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/free-when-not-last-ref/.dirs/runtime 889s ok 35 /keyfile/free-when-not-last-ref 889s # Start of locale-string tests 889s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/home 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/cache 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/system-config1:/tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/system-config2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/config 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/system-data1:/tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/system-data2 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/data 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/state 889s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_YPLAK3/keyfile/locale-string/multiple-loads/.dirs/runtime 889s # /keyfile/locale-string/multiple-loads summary: Check that loading with translations multiple times works 889s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2361 889s ok 36 /keyfile/locale-string/multiple-loads 889s # End of locale-string tests 889s # End of keyfile tests 889s TAP version 14 889s # random seed: R02S34b34ab88e914034a2ed0ed7253438c9 889s 1..5 889s # Start of appinfo tests 889s ok 1 /appinfo/utf16-strfuncs 889s ok 2 /appinfo/win32-extract-executable 889s ok 3 /appinfo/win32-rundll32-fixup 889s ok 4 /appinfo/win32-parse-filename 889s ok 5 /appinfo/win32-utf16-conversion-fail 889s # Start of subprocess tests 889s # End of subprocess tests 889s # End of appinfo tests 889s TAP version 14 889s # random seed: R02Sfce14f9e9087937bcf88717390253c27 889s 1..7 889s # Start of asyncqueue tests 889s ok 1 /asyncqueue/basics 889s ok 2 /asyncqueue/sort 889s ok 3 /asyncqueue/destroy 889s ok - glib/keyfile.test 889s # Running test: glib/win32-appinfo.test 889s ok - glib/win32-appinfo.test 889s # Running test: glib/asyncqueue.test 889s ok 4 /asyncqueue/threads 889s # Executing: glib/asyncqueue.test 889s ok - glib/asyncqueue.test 889s # Running test: glib/unicode-encoding.test 889s ok - glib/unicode-encoding.test 889s # Running test: glib/signals-refcount1.test 889s ok 5 /asyncqueue/timed 889s ok 6 /asyncqueue/remove 889s ok 7 /asyncqueue/push_front 889s # End of asyncqueue tests 889s TAP version 14 889s # random seed: R02S81bb32bdc4ab68fd43a2abd84d5a053e 889s 1..1 889s # Start of unicode tests 889s ok 1 /unicode/encoding 889s # End of unicode tests 889s TAP version 14 889s # random seed: R02S2ef9944d4ef88e464a4d3c6b0d4b2752 889s 1..1 889s # Start of gobject tests 889s # Start of refcount tests 889s # init 0x1d06269dd4a0 889s # 889s # init 0x1d06269d5580 889s # 894s # Executing: glib/signals-refcount1.test 894s ok - glib/signals-refcount1.test 894s # Running test: glib/protocol.test 894s # dispose 0x1d06269dd4a0! 894s # 894s # dispose 0x1d06269d5580! 894s # 894s ok 1 /gobject/refcount/signals 894s # slow test /gobject/refcount/signals executed in 5.00 secs 894s # End of refcount tests 894s # End of gobject tests 894s TAP version 14 894s # random seed: R02S4c2866dad60dcf20f81a15475af25a17 894s 1..9 894s # Start of glib tests 894s # Start of testing tests 894s # Start of protocol tests 894s ok 1 /glib/testing/protocol/debug 894s ok 2 /glib/testing/protocol/info 894s ok 3 /glib/testing/protocol/message 894s ok 4 /glib/testing/protocol/warning 894s ok 5 /glib/testing/protocol/critical 894s ok 6 /glib/testing/protocol/error 894s ok 7 /glib/testing/protocol/gtest-message 894s ok 8 /glib/testing/protocol/test-message 894s ok 9 /glib/testing/protocol/test-error 894s # End of protocol tests 894s # End of testing tests 894s # End of glib tests 894s TAP version 14 894s # random seed: R02S4885e4f937cc2fe658ec6b2f9041551b 894s 1..10 894s # Start of gdbus tests 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/validate-names/.dirs/runtime 894s ok 1 /gdbus/validate-names 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-own-name/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 2 /gdbus/bus-own-name 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 3 /gdbus/bus-watch-name 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 4 /gdbus/bus-watch-name-auto-start 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-auto-start-service-exist/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s dbus-daemon[39168]: [session uid=1000 pid=39168 pidfd=4] Activating service name='org.gtk.GDBus.FakeService' requested by ':1.0' (uid=1000 pid=39159 comm="/usr/libexec/installed-tests/glib/gdbus-names" label="unconfined") 894s ok - glib/protocol.test 894s # Running test: glib/gdbus-names.test 894s # Acquired a message bus connection 894s dbus-daemon[39168]: [session uid=1000 pid=39168 pidfd=4] Successfully activated service 'org.gtk.GDBus.FakeService' 894s # Acquired the name org.gtk.GDBus.FakeService 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 5 /gdbus/bus-watch-name-auto-start-service-exist 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 6 /gdbus/bus-watch-name-closures 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-name-closures-auto-start/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok - glib/gdbus-names.test 894s # Running test: glib/checksum.test 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 7 /gdbus/bus-watch-name-closures-auto-start 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-watch-different-context/.dirs/runtime 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 8 /gdbus/bus-watch-different-context 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/bus-unwatch-early/.dirs/runtime 894s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/604 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 894s ok 9 /gdbus/bus-unwatch-early 894s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/home 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/cache 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/system-config1:/tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/system-config2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/config 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/system-data1:/tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/system-data2 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/data 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/state 894s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_05FKK3/gdbus/escape-object-path/.dirs/runtime 894s ok 10 /gdbus/escape-object-path 894s # End of gdbus tests 894s TAP version 14 894s # random seed: R02Se2ab043a62b8a7cdba1fc67c54f99404 894s 1..1851 894s # Start of checksum tests 894s ok 1 /checksum/unsupported 894s # Start of MD5 tests 894s ok 2 /checksum/MD5/0 894s ok 3 /checksum/MD5/1 894s ok 4 /checksum/MD5/2 894s ok 5 /checksum/MD5/3 894s ok 6 /checksum/MD5/4 894s ok 7 /checksum/MD5/5 894s ok 8 /checksum/MD5/6 894s ok 9 /checksum/MD5/7 894s ok 10 /checksum/MD5/8 894s ok 11 /checksum/MD5/9 894s ok 12 /checksum/MD5/10 894s ok 13 /checksum/MD5/11 894s ok 14 /checksum/MD5/12 894s ok 15 /checksum/MD5/13 894s ok 16 /checksum/MD5/14 894s ok 17 /checksum/MD5/15 894s ok 18 /checksum/MD5/16 894s ok 19 /checksum/MD5/17 894s ok 20 /checksum/MD5/18 894s ok 21 /checksum/MD5/19 894s ok 22 /checksum/MD5/20 894s ok 23 /checksum/MD5/21 894s ok 24 /checksum/MD5/22 894s ok 25 /checksum/MD5/23 894s ok 26 /checksum/MD5/24 894s ok 27 /checksum/MD5/25 894s ok 28 /checksum/MD5/26 894s ok 29 /checksum/MD5/27 894s ok 30 /checksum/MD5/28 894s ok 31 /checksum/MD5/29 894s ok 32 /checksum/MD5/30 894s ok 33 /checksum/MD5/31 894s ok 34 /checksum/MD5/32 894s ok 35 /checksum/MD5/33 894s ok 36 /checksum/MD5/34 894s ok 37 /checksum/MD5/35 894s ok 38 /checksum/MD5/36 894s ok 39 /checksum/MD5/37 894s ok 40 /checksum/MD5/38 894s ok 41 /checksum/MD5/39 894s ok 42 /checksum/MD5/40 894s ok 43 /checksum/MD5/41 894s ok 44 /checksum/MD5/42 894s ok 45 /checksum/MD5/43 894s ok 46 /checksum/MD5/44 894s ok 47 /checksum/MD5/45 894s ok 48 /checksum/MD5/46 894s ok 49 /checksum/MD5/47 894s ok 50 /checksum/MD5/48 894s ok 51 /checksum/MD5/49 894s ok 52 /checksum/MD5/50 894s ok 53 /checksum/MD5/51 894s ok 54 /checksum/MD5/52 894s ok 55 /checksum/MD5/53 894s ok 56 /checksum/MD5/54 894s ok 57 /checksum/MD5/55 894s ok 58 /checksum/MD5/56 894s ok 59 /checksum/MD5/57 894s ok 60 /checksum/MD5/58 894s ok 61 /checksum/MD5/59 894s ok 62 /checksum/MD5/60 894s ok 63 /checksum/MD5/61 894s ok 64 /checksum/MD5/62 894s ok 65 /checksum/MD5/63 894s ok 66 /checksum/MD5/64 894s ok 67 /checksum/MD5/65 894s ok 68 /checksum/MD5/66 894s ok 69 /checksum/MD5/67 894s ok 70 /checksum/MD5/68 894s ok 71 /checksum/MD5/69 894s ok 72 /checksum/MD5/70 894s ok 73 /checksum/MD5/71 894s ok 74 /checksum/MD5/72 894s ok 75 /checksum/MD5/73 894s ok 76 /checksum/MD5/74 894s ok 77 /checksum/MD5/75 894s ok 78 /checksum/MD5/76 894s ok 79 /checksum/MD5/77 894s ok 80 /checksum/MD5/78 894s ok 81 /checksum/MD5/79 894s ok 82 /checksum/MD5/80 894s ok 83 /checksum/MD5/81 894s ok 84 /checksum/MD5/82 894s ok 85 /checksum/MD5/83 894s ok 86 /checksum/MD5/84 894s ok 87 /checksum/MD5/85 894s ok 88 /checksum/MD5/86 894s ok 89 /checksum/MD5/87 894s ok 90 /checksum/MD5/88 894s ok 91 /checksum/MD5/89 894s ok 92 /checksum/MD5/90 894s ok 93 /checksum/MD5/91 894s ok 94 /checksum/MD5/92 894s ok 95 /checksum/MD5/93 894s ok 96 /checksum/MD5/94 894s ok 97 /checksum/MD5/95 894s ok 98 /checksum/MD5/96 894s ok 99 /checksum/MD5/97 894s ok 100 /checksum/MD5/98 894s ok 101 /checksum/MD5/99 894s ok 102 /checksum/MD5/100 894s ok 103 /checksum/MD5/101 894s ok 104 /checksum/MD5/102 894s ok 105 /checksum/MD5/103 894s ok 106 /checksum/MD5/104 894s ok 107 /checksum/MD5/105 894s ok 108 /checksum/MD5/106 894s ok 109 /checksum/MD5/107 894s ok 110 /checksum/MD5/108 894s ok 111 /checksum/MD5/109 894s ok 112 /checksum/MD5/110 894s ok 113 /checksum/MD5/111 894s ok 114 /checksum/MD5/112 894s ok 115 /checksum/MD5/113 894s ok 116 /checksum/MD5/114 894s ok 117 /checksum/MD5/115 894s ok 118 /checksum/MD5/116 894s ok 119 /checksum/MD5/117 894s ok 120 /checksum/MD5/118 894s ok 121 /checksum/MD5/119 894s ok 122 /checksum/MD5/120 894s ok 123 /checksum/MD5/121 894s ok 124 /checksum/MD5/122 894s ok 125 /checksum/MD5/123 894s ok 126 /checksum/MD5/124 894s ok 127 /checksum/MD5/125 894s ok 128 /checksum/MD5/126 894s ok 129 /checksum/MD5/127 894s ok 130 /checksum/MD5/128 894s ok 131 /checksum/MD5/129 894s ok 132 /checksum/MD5/130 894s ok 133 /checksum/MD5/131 894s ok 134 /checksum/MD5/132 894s ok 135 /checksum/MD5/133 894s ok 136 /checksum/MD5/134 894s ok 137 /checksum/MD5/135 894s ok 138 /checksum/MD5/136 894s ok 139 /checksum/MD5/137 894s ok 140 /checksum/MD5/138 894s ok 141 /checksum/MD5/139 894s ok 142 /checksum/MD5/140 894s ok 143 /checksum/MD5/141 894s ok 144 /checksum/MD5/142 894s ok 145 /checksum/MD5/143 894s ok 146 /checksum/MD5/144 894s ok 147 /checksum/MD5/145 894s ok 148 /checksum/MD5/146 894s ok 149 /checksum/MD5/147 894s ok 150 /checksum/MD5/148 894s ok 151 /checksum/MD5/149 894s ok 152 /checksum/MD5/150 894s ok 153 /checksum/MD5/151 894s ok 154 /checksum/MD5/152 894s ok 155 /checksum/MD5/153 894s ok 156 /checksum/MD5/154 894s ok 157 /checksum/MD5/155 894s ok 158 /checksum/MD5/156 894s ok 159 /checksum/MD5/157 894s ok 160 /checksum/MD5/158 894s ok 161 /checksum/MD5/159 894s ok 162 /checksum/MD5/160 894s ok 163 /checksum/MD5/161 894s ok 164 /checksum/MD5/162 894s ok 165 /checksum/MD5/163 894s ok 166 /checksum/MD5/164 894s ok 167 /checksum/MD5/165 894s ok 168 /checksum/MD5/166 894s ok 169 /checksum/MD5/167 894s ok 170 /checksum/MD5/168 894s ok 171 /checksum/MD5/169 894s ok 172 /checksum/MD5/170 894s ok 173 /checksum/MD5/171 894s ok 174 /checksum/MD5/172 894s ok 175 /checksum/MD5/173 894s ok 176 /checksum/MD5/174 894s ok 177 /checksum/MD5/175 894s ok 178 /checksum/MD5/176 894s ok 179 /checksum/MD5/177 894s ok 180 /checksum/MD5/178 894s ok 181 /checksum/MD5/179 894s ok 182 /checksum/MD5/180 894s ok 183 /checksum/MD5/181 894s ok 184 /checksum/MD5/182 894s ok 185 /checksum/MD5/183 894s ok 186 /checksum/MD5/string 894s ok 187 /checksum/MD5/bytes 894s # Start of reset tests 894s ok 188 /checksum/MD5/reset/0 894s ok 189 /checksum/MD5/reset/1 894s ok 190 /checksum/MD5/reset/2 894s ok 191 /checksum/MD5/reset/3 894s ok 192 /checksum/MD5/reset/4 894s ok 193 /checksum/MD5/reset/5 894s ok 194 /checksum/MD5/reset/6 894s ok 195 /checksum/MD5/reset/7 894s ok 196 /checksum/MD5/reset/8 894s ok 197 /checksum/MD5/reset/9 894s ok 198 /checksum/MD5/reset/10 894s ok 199 /checksum/MD5/reset/11 894s ok 200 /checksum/MD5/reset/12 894s ok 201 /checksum/MD5/reset/13 894s ok 202 /checksum/MD5/reset/14 894s ok 203 /checksum/MD5/reset/15 894s ok 204 /checksum/MD5/reset/16 894s ok 205 /checksum/MD5/reset/17 894s ok 206 /checksum/MD5/reset/18 894s ok 207 /checksum/MD5/reset/19 894s ok 208 /checksum/MD5/reset/20 894s ok 209 /checksum/MD5/reset/21 894s ok 210 /checksum/MD5/reset/22 894s ok 211 /checksum/MD5/reset/23 894s ok 212 /checksum/MD5/reset/24 894s ok 213 /checksum/MD5/reset/25 894s ok 214 /checksum/MD5/reset/26 894s ok 215 /checksum/MD5/reset/27 894s ok 216 /checksum/MD5/reset/28 894s ok 217 /checksum/MD5/reset/29 894s ok 218 /checksum/MD5/reset/30 894s ok 219 /checksum/MD5/reset/31 894s ok 220 /checksum/MD5/reset/32 894s ok 221 /checksum/MD5/reset/33 894s ok 222 /checksum/MD5/reset/34 894s ok 223 /checksum/MD5/reset/35 894s ok 224 /checksum/MD5/reset/36 894s ok 225 /checksum/MD5/reset/37 894s ok 226 /checksum/MD5/reset/38 894s ok 227 /checksum/MD5/reset/39 894s ok 228 /checksum/MD5/reset/40 894s ok 229 /checksum/MD5/reset/41 894s ok 230 /checksum/MD5/reset/42 894s ok 231 /checksum/MD5/reset/43 894s ok 232 /checksum/MD5/reset/44 894s ok 233 /checksum/MD5/reset/45 894s ok 234 /checksum/MD5/reset/46 894s ok 235 /checksum/MD5/reset/47 894s ok 236 /checksum/MD5/reset/48 894s ok 237 /checksum/MD5/reset/49 894s ok 238 /checksum/MD5/reset/50 894s ok 239 /checksum/MD5/reset/51 894s ok 240 /checksum/MD5/reset/52 894s ok 241 /checksum/MD5/reset/53 894s ok 242 /checksum/MD5/reset/54 894s ok 243 /checksum/MD5/reset/55 894s ok 244 /checksum/MD5/reset/56 894s ok 245 /checksum/MD5/reset/57 894s ok 246 /checksum/MD5/reset/58 894s ok 247 /checksum/MD5/reset/59 894s ok 248 /checksum/MD5/reset/60 894s ok 249 /checksum/MD5/reset/61 894s ok 250 /checksum/MD5/reset/62 894s ok 251 /checksum/MD5/reset/63 894s ok 252 /checksum/MD5/reset/64 894s ok 253 /checksum/MD5/reset/65 894s ok 254 /checksum/MD5/reset/66 894s ok 255 /checksum/MD5/reset/67 894s ok 256 /checksum/MD5/reset/68 894s ok 257 /checksum/MD5/reset/69 894s ok 258 /checksum/MD5/reset/70 894s ok 259 /checksum/MD5/reset/71 894s ok 260 /checksum/MD5/reset/72 894s ok 261 /checksum/MD5/reset/73 894s ok 262 /checksum/MD5/reset/74 894s ok 263 /checksum/MD5/reset/75 894s ok 264 /checksum/MD5/reset/76 894s ok 265 /checksum/MD5/reset/77 894s ok 266 /checksum/MD5/reset/78 894s ok 267 /checksum/MD5/reset/79 894s ok 268 /checksum/MD5/reset/80 894s ok 269 /checksum/MD5/reset/81 894s ok 270 /checksum/MD5/reset/82 894s ok 271 /checksum/MD5/reset/83 894s ok 272 /checksum/MD5/reset/84 894s ok 273 /checksum/MD5/reset/85 894s ok 274 /checksum/MD5/reset/86 894s ok 275 /checksum/MD5/reset/87 894s ok 276 /checksum/MD5/reset/88 894s ok 277 /checksum/MD5/reset/89 894s ok 278 /checksum/MD5/reset/90 894s ok 279 /checksum/MD5/reset/91 894s ok 280 /checksum/MD5/reset/92 894s ok 281 /checksum/MD5/reset/93 894s ok 282 /checksum/MD5/reset/94 894s ok 283 /checksum/MD5/reset/95 894s ok 284 /checksum/MD5/reset/96 894s ok 285 /checksum/MD5/reset/97 894s ok 286 /checksum/MD5/reset/98 894s ok 287 /checksum/MD5/reset/99 894s ok 288 /checksum/MD5/reset/100 894s ok 289 /checksum/MD5/reset/101 894s ok 290 /checksum/MD5/reset/102 894s ok 291 /checksum/MD5/reset/103 894s ok 292 /checksum/MD5/reset/104 894s ok 293 /checksum/MD5/reset/105 894s ok 294 /checksum/MD5/reset/106 894s ok 295 /checksum/MD5/reset/107 894s ok 296 /checksum/MD5/reset/108 894s ok 297 /checksum/MD5/reset/109 894s ok 298 /checksum/MD5/reset/110 894s ok 299 /checksum/MD5/reset/111 894s ok 300 /checksum/MD5/reset/112 894s ok 301 /checksum/MD5/reset/113 894s ok 302 /checksum/MD5/reset/114 894s ok 303 /checksum/MD5/reset/115 894s ok 304 /checksum/MD5/reset/116 894s ok 305 /checksum/MD5/reset/117 894s ok 306 /checksum/MD5/reset/118 894s ok 307 /checksum/MD5/reset/119 894s ok 308 /checksum/MD5/reset/120 894s ok 309 /checksum/MD5/reset/121 894s ok 310 /checksum/MD5/reset/122 894s ok 311 /checksum/MD5/reset/123 894s ok 312 /checksum/MD5/reset/124 894s ok 313 /checksum/MD5/reset/125 894s ok 314 /checksum/MD5/reset/126 894s ok 315 /checksum/MD5/reset/127 894s ok 316 /checksum/MD5/reset/128 894s ok 317 /checksum/MD5/reset/129 894s ok 318 /checksum/MD5/reset/130 894s ok 319 /checksum/MD5/reset/131 894s ok 320 /checksum/MD5/reset/132 894s ok 321 /checksum/MD5/reset/133 894s ok 322 /checksum/MD5/reset/134 894s ok 323 /checksum/MD5/reset/135 894s ok 324 /checksum/MD5/reset/136 894s ok 325 /checksum/MD5/reset/137 894s ok 326 /checksum/MD5/reset/138 894s ok 327 /checksum/MD5/reset/139 894s ok 328 /checksum/MD5/reset/140 894s ok 329 /checksum/MD5/reset/141 894s ok 330 /checksum/MD5/reset/142 894s ok 331 /checksum/MD5/reset/143 894s ok 332 /checksum/MD5/reset/144 894s ok 333 /checksum/MD5/reset/145 894s ok 334 /checksum/MD5/reset/146 894s ok 335 /checksum/MD5/reset/147 894s ok 336 /checksum/MD5/reset/148 894s ok 337 /checksum/MD5/reset/149 894s ok 338 /checksum/MD5/reset/150 894s ok 339 /checksum/MD5/reset/151 894s ok 340 /checksum/MD5/reset/152 894s ok 341 /checksum/MD5/reset/153 894s ok 342 /checksum/MD5/reset/154 894s ok 343 /checksum/MD5/reset/155 894s ok 344 /checksum/MD5/reset/156 894s ok 345 /checksum/MD5/reset/157 894s ok 346 /checksum/MD5/reset/158 894s ok 347 /checksum/MD5/reset/159 894s ok 348 /checksum/MD5/reset/160 894s ok 349 /checksum/MD5/reset/161 894s ok 350 /checksum/MD5/reset/162 894s ok 351 /checksum/MD5/reset/163 894s ok 352 /checksum/MD5/reset/164 894s ok 353 /checksum/MD5/reset/165 894s ok 354 /checksum/MD5/reset/166 894s ok 355 /checksum/MD5/reset/167 894s ok 356 /checksum/MD5/reset/168 894s ok 357 /checksum/MD5/reset/169 894s ok 358 /checksum/MD5/reset/170 894s ok 359 /checksum/MD5/reset/171 894s ok 360 /checksum/MD5/reset/172 894s ok 361 /checksum/MD5/reset/173 894s ok 362 /checksum/MD5/reset/174 894s ok 363 /checksum/MD5/reset/175 894s ok 364 /checksum/MD5/reset/176 894s ok 365 /checksum/MD5/reset/177 894s ok 366 /checksum/MD5/reset/178 894s ok 367 /checksum/MD5/reset/179 894s ok 368 /checksum/MD5/reset/180 894s ok 369 /checksum/MD5/reset/181 894s ok 370 /checksum/MD5/reset/182 894s ok 371 /checksum/MD5/reset/183 894s # End of reset tests 894s # End of MD5 tests 894s # Start of SHA1 tests 894s ok 372 /checksum/SHA1/0 894s ok 373 /checksum/SHA1/1 894s ok 374 /checksum/SHA1/2 894s ok 375 /checksum/SHA1/3 894s ok 376 /checksum/SHA1/4 894s ok 377 /checksum/SHA1/5 894s ok 378 /checksum/SHA1/6 894s ok 379 /checksum/SHA1/7 894s ok 380 /checksum/SHA1/8 894s ok 381 /checksum/SHA1/9 894s ok 382 /checksum/SHA1/10 894s ok 383 /checksum/SHA1/11 894s ok 384 /checksum/SHA1/12 894s ok 385 /checksum/SHA1/13 894s ok 386 /checksum/SHA1/14 894s ok 387 /checksum/SHA1/15 894s ok 388 /checksum/SHA1/16 894s ok 389 /checksum/SHA1/17 894s ok 390 /checksum/SHA1/18 894s ok 391 /checksum/SHA1/19 894s ok 392 /checksum/SHA1/20 894s ok 393 /checksum/SHA1/21 894s ok 394 /checksum/SHA1/22 894s ok 395 /checksum/SHA1/23 894s ok 396 /checksum/SHA1/24 894s ok 397 /checksum/SHA1/25 894s ok 398 /checksum/SHA1/26 894s ok 399 /checksum/SHA1/27 894s ok 400 /checksum/SHA1/28 894s ok 401 /checksum/SHA1/29 894s ok 402 /checksum/SHA1/30 894s ok 403 /checksum/SHA1/31 894s ok 404 /checksum/SHA1/32 894s ok 405 /checksum/SHA1/33 894s ok 406 /checksum/SHA1/34 894s ok 407 /checksum/SHA1/35 894s ok 408 /checksum/SHA1/36 894s ok 409 /checksum/SHA1/37 894s ok 410 /checksum/SHA1/38 894s ok 411 /checksum/SHA1/39 894s ok 412 /checksum/SHA1/40 894s ok 413 /checksum/SHA1/41 894s ok 414 /checksum/SHA1/42 894s ok 415 /checksum/SHA1/43 894s ok 416 /checksum/SHA1/44 894s ok 417 /checksum/SHA1/45 894s ok 418 /checksum/SHA1/46 894s ok 419 /checksum/SHA1/47 894s ok 420 /checksum/SHA1/48 894s ok 421 /checksum/SHA1/49 894s ok 422 /checksum/SHA1/50 894s ok 423 /checksum/SHA1/51 894s ok 424 /checksum/SHA1/52 894s ok 425 /checksum/SHA1/53 894s ok 426 /checksum/SHA1/54 894s ok 427 /checksum/SHA1/55 894s ok 428 /checksum/SHA1/56 894s ok 429 /checksum/SHA1/57 894s ok 430 /checksum/SHA1/58 894s ok 431 /checksum/SHA1/59 894s ok 432 /checksum/SHA1/60 894s ok 433 /checksum/SHA1/61 894s ok 434 /checksum/SHA1/62 894s ok 435 /checksum/SHA1/63 894s ok 436 /checksum/SHA1/64 894s ok 437 /checksum/SHA1/65 894s ok 438 /checksum/SHA1/66 894s ok 439 /checksum/SHA1/67 894s ok 440 /checksum/SHA1/68 894s ok 441 /checksum/SHA1/69 894s ok 442 /checksum/SHA1/70 894s ok 443 /checksum/SHA1/71 894s ok 444 /checksum/SHA1/72 894s ok 445 /checksum/SHA1/73 894s ok 446 /checksum/SHA1/74 894s ok 447 /checksum/SHA1/75 894s ok 448 /checksum/SHA1/76 894s ok 449 /checksum/SHA1/77 894s ok 450 /checksum/SHA1/78 894s ok 451 /checksum/SHA1/79 894s ok 452 /checksum/SHA1/80 894s ok 453 /checksum/SHA1/81 894s ok 454 /checksum/SHA1/82 894s ok 455 /checksum/SHA1/83 894s ok 456 /checksum/SHA1/84 894s ok 457 /checksum/SHA1/85 894s ok 458 /checksum/SHA1/86 894s ok 459 /checksum/SHA1/87 894s ok 460 /checksum/SHA1/88 894s ok 461 /checksum/SHA1/89 894s ok 462 /checksum/SHA1/90 894s ok 463 /checksum/SHA1/91 894s ok 464 /checksum/SHA1/92 894s ok 465 /checksum/SHA1/93 894s ok 466 /checksum/SHA1/94 894s ok 467 /checksum/SHA1/95 894s ok 468 /checksum/SHA1/96 894s ok 469 /checksum/SHA1/97 894s ok 470 /checksum/SHA1/98 894s ok 471 /checksum/SHA1/99 894s ok 472 /checksum/SHA1/100 894s ok 473 /checksum/SHA1/101 894s ok 474 /checksum/SHA1/102 894s ok 475 /checksum/SHA1/103 894s ok 476 /checksum/SHA1/104 894s ok 477 /checksum/SHA1/105 894s ok 478 /checksum/SHA1/106 894s ok 479 /checksum/SHA1/107 894s ok 480 /checksum/SHA1/108 894s ok 481 /checksum/SHA1/109 894s ok 482 /checksum/SHA1/110 894s ok 483 /checksum/SHA1/111 894s ok 484 /checksum/SHA1/112 894s ok 485 /checksum/SHA1/113 894s ok 486 /checksum/SHA1/114 894s ok 487 /checksum/SHA1/115 894s ok 488 /checksum/SHA1/116 894s ok 489 /checksum/SHA1/117 894s ok 490 /checksum/SHA1/118 894s ok 491 /checksum/SHA1/119 894s ok 492 /checksum/SHA1/120 894s ok 493 /checksum/SHA1/121 894s ok 494 /checksum/SHA1/122 894s ok 495 /checksum/SHA1/123 894s ok 496 /checksum/SHA1/124 894s ok 497 /checksum/SHA1/125 894s ok 498 /checksum/SHA1/126 894s ok 499 /checksum/SHA1/127 894s ok 500 /checksum/SHA1/128 894s ok 501 /checksum/SHA1/129 894s ok 502 /checksum/SHA1/130 894s ok 503 /checksum/SHA1/131 894s ok 504 /checksum/SHA1/132 894s ok 505 /checksum/SHA1/133 894s ok 506 /checksum/SHA1/134 894s ok 507 /checksum/SHA1/135 894s ok 508 /checksum/SHA1/136 894s ok 509 /checksum/SHA1/137 894s ok 510 /checksum/SHA1/138 894s ok 511 /checksum/SHA1/139 894s ok 512 /checksum/SHA1/140 894s ok 513 /checksum/SHA1/141 894s ok 514 /checksum/SHA1/142 894s ok 515 /checksum/SHA1/143 894s ok 516 /checksum/SHA1/144 894s ok 517 /checksum/SHA1/145 894s ok 518 /checksum/SHA1/146 894s ok 519 /checksum/SHA1/147 894s ok 520 /checksum/SHA1/148 894s ok 521 /checksum/SHA1/149 894s ok 522 /checksum/SHA1/150 894s ok 523 /checksum/SHA1/151 894s ok 524 /checksum/SHA1/152 894s ok 525 /checksum/SHA1/153 894s ok 526 /checksum/SHA1/154 894s ok 527 /checksum/SHA1/155 894s ok 528 /checksum/SHA1/156 894s ok 529 /checksum/SHA1/157 894s ok 530 /checksum/SHA1/158 894s ok 531 /checksum/SHA1/159 894s ok 532 /checksum/SHA1/160 894s ok 533 /checksum/SHA1/161 894s ok 534 /checksum/SHA1/162 894s ok 535 /checksum/SHA1/163 894s ok 536 /checksum/SHA1/164 894s ok 537 /checksum/SHA1/165 894s ok 538 /checksum/SHA1/166 894s ok 539 /checksum/SHA1/167 894s ok 540 /checksum/SHA1/168 894s ok 541 /checksum/SHA1/169 894s ok 542 /checksum/SHA1/170 894s ok 543 /checksum/SHA1/171 894s ok 544 /checksum/SHA1/172 894s ok 545 /checksum/SHA1/173 894s ok 546 /checksum/SHA1/174 894s ok 547 /checksum/SHA1/175 894s ok 548 /checksum/SHA1/176 894s ok 549 /checksum/SHA1/177 894s ok 550 /checksum/SHA1/178 894s ok 551 /checksum/SHA1/179 894s ok 552 /checksum/SHA1/180 894s ok 553 /checksum/SHA1/181 894s ok 554 /checksum/SHA1/182 894s ok 555 /checksum/SHA1/183 894s ok 556 /checksum/SHA1/string 894s ok 557 /checksum/SHA1/bytes 894s # Start of reset tests 894s ok 558 /checksum/SHA1/reset/0 894s ok 559 /checksum/SHA1/reset/1 894s ok 560 /checksum/SHA1/reset/2 894s ok 561 /checksum/SHA1/reset/3 894s ok 562 /checksum/SHA1/reset/4 894s ok 563 /checksum/SHA1/reset/5 894s ok 564 /checksum/SHA1/reset/6 894s ok 565 /checksum/SHA1/reset/7 894s ok 566 /checksum/SHA1/reset/8 894s ok 567 /checksum/SHA1/reset/9 894s ok 568 /checksum/SHA1/reset/10 894s ok 569 /checksum/SHA1/reset/11 894s ok 570 /checksum/SHA1/reset/12 894s ok 571 /checksum/SHA1/reset/13 894s ok 572 /checksum/SHA1/reset/14 894s ok 573 /checksum/SHA1/reset/15 894s ok 574 /checksum/SHA1/reset/16 894s ok 575 /checksum/SHA1/reset/17 894s ok 576 /checksum/SHA1/reset/18 894s ok 577 /checksum/SHA1/reset/19 894s ok 578 /checksum/SHA1/reset/20 894s ok 579 /checksum/SHA1/reset/21 894s ok 580 /checksum/SHA1/reset/22 894s ok 581 /checksum/SHA1/reset/23 894s ok 582 /checksum/SHA1/reset/24 894s ok 583 /checksum/SHA1/reset/25 894s ok 584 /checksum/SHA1/reset/26 894s ok 585 /checksum/SHA1/reset/27 894s ok 586 /checksum/SHA1/reset/28 894s ok 587 /checksum/SHA1/reset/29 894s ok 588 /checksum/SHA1/reset/30 894s ok 589 /checksum/SHA1/reset/31 894s ok 590 /checksum/SHA1/reset/32 894s ok 591 /checksum/SHA1/reset/33 894s ok 592 /checksum/SHA1/reset/34 894s ok 593 /checksum/SHA1/reset/35 894s ok 594 /checksum/SHA1/reset/36 894s ok 595 /checksum/SHA1/reset/37 894s ok 596 /checksum/SHA1/reset/38 894s ok 597 /checksum/SHA1/reset/39 894s ok 598 /checksum/SHA1/reset/40 894s ok 599 /checksum/SHA1/reset/41 894s ok 600 /checksum/SHA1/reset/42 894s ok 601 /checksum/SHA1/reset/43 894s ok 602 /checksum/SHA1/reset/44 894s ok 603 /checksum/SHA1/reset/45 894s ok 604 /checksum/SHA1/reset/46 894s ok 605 /checksum/SHA1/reset/47 894s ok 606 /checksum/SHA1/reset/48 894s ok 607 /checksum/SHA1/reset/49 894s ok 608 /checksum/SHA1/reset/50 894s ok 609 /checksum/SHA1/reset/51 894s ok 610 /checksum/SHA1/reset/52 894s ok 611 /checksum/SHA1/reset/53 894s ok 612 /checksum/SHA1/reset/54 894s ok 613 /checksum/SHA1/reset/55 894s ok 614 /checksum/SHA1/reset/56 894s ok 615 /checksum/SHA1/reset/57 894s ok 616 /checksum/SHA1/reset/58 894s ok 617 /checksum/SHA1/reset/59 894s ok 618 /checksum/SHA1/reset/60 894s ok 619 /checksum/SHA1/reset/61 894s ok 620 /checksum/SHA1/reset/62 894s ok 621 /checksum/SHA1/reset/63 894s ok 622 /checksum/SHA1/reset/64 894s ok 623 /checksum/SHA1/reset/65 894s ok 624 /checksum/SHA1/reset/66 894s ok 625 /checksum/SHA1/reset/67 894s ok 626 /checksum/SHA1/reset/68 894s ok 627 /checksum/SHA1/reset/69 894s ok 628 /checksum/SHA1/reset/70 894s ok 629 /checksum/SHA1/reset/71 894s ok 630 /checksum/SHA1/reset/72 894s ok 631 /checksum/SHA1/reset/73 894s ok 632 /checksum/SHA1/reset/74 894s ok 633 /checksum/SHA1/reset/75 894s ok 634 /checksum/SHA1/reset/76 894s ok 635 /checksum/SHA1/reset/77 894s ok 636 /checksum/SHA1/reset/78 894s ok 637 /checksum/SHA1/reset/79 894s ok 638 /checksum/SHA1/reset/80 894s ok 639 /checksum/SHA1/reset/81 894s ok 640 /checksum/SHA1/reset/82 894s ok 641 /checksum/SHA1/reset/83 894s ok 642 /checksum/SHA1/reset/84 894s ok 643 /checksum/SHA1/reset/85 894s ok 644 /checksum/SHA1/reset/86 894s ok 645 /checksum/SHA1/reset/87 894s ok 646 /checksum/SHA1/reset/88 894s ok 647 /checksum/SHA1/reset/89 894s ok 648 /checksum/SHA1/reset/90 894s ok 649 /checksum/SHA1/reset/91 894s ok 650 /checksum/SHA1/reset/92 894s ok 651 /checksum/SHA1/reset/93 894s ok 652 /checksum/SHA1/reset/94 894s ok 653 /checksum/SHA1/reset/95 894s ok 654 /checksum/SHA1/reset/96 894s ok 655 /checksum/SHA1/reset/97 894s ok 656 /checksum/SHA1/reset/98 894s ok 657 /checksum/SHA1/reset/99 894s ok 658 /checksum/SHA1/reset/100 894s ok 659 /checksum/SHA1/reset/101 894s ok 660 /checksum/SHA1/reset/102 894s ok 661 /checksum/SHA1/reset/103 894s ok 662 /checksum/SHA1/reset/104 894s ok 663 /checksum/SHA1/reset/105 894s ok 664 /checksum/SHA1/reset/106 894s ok 665 /checksum/SHA1/reset/107 894s ok 666 /checksum/SHA1/reset/108 894s ok 667 /checksum/SHA1/reset/109 894s ok 668 /checksum/SHA1/reset/110 894s ok 669 /checksum/SHA1/reset/111 894s ok 670 /checksum/SHA1/reset/112 894s ok 671 /checksum/SHA1/reset/113 894s ok 672 /checksum/SHA1/reset/114 894s ok 673 /checksum/SHA1/reset/115 894s ok 674 /checksum/SHA1/reset/116 894s ok 675 /checksum/SHA1/reset/117 894s ok 676 /checksum/SHA1/reset/118 894s ok 677 /checksum/SHA1/reset/119 894s ok 678 /checksum/SHA1/reset/120 894s ok 679 /checksum/SHA1/reset/121 894s ok 680 /checksum/SHA1/reset/122 894s ok 681 /checksum/SHA1/reset/123 894s ok 682 /checksum/SHA1/reset/124 894s ok 683 /checksum/SHA1/reset/125 894s ok 684 /checksum/SHA1/reset/126 894s ok 685 /checksum/SHA1/reset/127 894s ok 686 /checksum/SHA1/reset/128 894s ok 687 /checksum/SHA1/reset/129 894s ok 688 /checksum/SHA1/reset/130 894s ok 689 /checksum/SHA1/reset/131 894s ok 690 /checksum/SHA1/reset/132 894s ok 691 /checksum/SHA1/reset/133 894s ok 692 /checksum/SHA1/reset/134 894s ok 693 /checksum/SHA1/reset/135 894s ok 694 /checksum/SHA1/reset/136 894s ok 695 /checksum/SHA1/reset/137 894s ok 696 /checksum/SHA1/reset/138 894s ok 697 /checksum/SHA1/reset/139 894s ok 698 /checksum/SHA1/reset/140 894s ok 699 /checksum/SHA1/reset/141 894s ok 700 /checksum/SHA1/reset/142 894s ok 701 /checksum/SHA1/reset/143 894s ok 702 /checksum/SHA1/reset/144 894s ok 703 /checksum/SHA1/reset/145 894s ok 704 /checksum/SHA1/reset/146 894s ok 705 /checksum/SHA1/reset/147 894s ok 706 /checksum/SHA1/reset/148 894s ok 707 /checksum/SHA1/reset/149 894s ok 708 /checksum/SHA1/reset/150 894s ok 709 /checksum/SHA1/reset/151 894s ok 710 /checksum/SHA1/reset/152 894s ok 711 /checksum/SHA1/reset/153 894s ok 712 /checksum/SHA1/reset/154 894s ok 713 /checksum/SHA1/reset/155 894s ok 714 /checksum/SHA1/reset/156 894s ok 715 /checksum/SHA1/reset/157 894s ok 716 /checksum/SHA1/reset/158 894s ok 717 /checksum/SHA1/reset/159 894s ok 718 /checksum/SHA1/reset/160 894s ok 719 /checksum/SHA1/reset/161 894s ok 720 /checksum/SHA1/reset/162 894s ok 721 /checksum/SHA1/reset/163 894s ok 722 /checksum/SHA1/reset/164 894s ok 723 /checksum/SHA1/reset/165 894s ok 724 /checksum/SHA1/reset/166 894s ok 725 /checksum/SHA1/reset/167 894s ok 726 /checksum/SHA1/reset/168 894s ok 727 /checksum/SHA1/reset/169 894s ok 728 /checksum/SHA1/reset/170 894s ok 729 /checksum/SHA1/reset/171 894s ok 730 /checksum/SHA1/reset/172 894s ok 731 /checksum/SHA1/reset/173 894s ok 732 /checksum/SHA1/reset/174 894s ok 733 /checksum/SHA1/reset/175 894s ok 734 /checksum/SHA1/reset/176 894s ok 735 /checksum/SHA1/reset/177 894s ok 736 /checksum/SHA1/reset/178 894s ok 737 /checksum/SHA1/reset/179 894s ok 738 /checksum/SHA1/reset/180 894s ok 739 /checksum/SHA1/reset/181 894s ok 740 /checksum/SHA1/reset/182 894s ok 741 /checksum/SHA1/reset/183 894s # End of reset tests 894s # End of SHA1 tests 894s # Start of SHA256 tests 894s ok 742 /checksum/SHA256/0 894s ok 743 /checksum/SHA256/1 894s ok 744 /checksum/SHA256/2 894s ok 745 /checksum/SHA256/3 894s ok 746 /checksum/SHA256/4 894s ok 747 /checksum/SHA256/5 894s ok 748 /checksum/SHA256/6 894s ok 749 /checksum/SHA256/7 894s ok 750 /checksum/SHA256/8 894s ok 751 /checksum/SHA256/9 894s ok 752 /checksum/SHA256/10 894s ok 753 /checksum/SHA256/11 894s ok 754 /checksum/SHA256/12 894s ok 755 /checksum/SHA256/13 894s ok 756 /checksum/SHA256/14 894s ok 757 /checksum/SHA256/15 894s ok 758 /checksum/SHA256/16 894s ok 759 /checksum/SHA256/17 894s ok 760 /checksum/SHA256/18 894s ok 761 /checksum/SHA256/19 894s ok 762 /checksum/SHA256/20 894s ok 763 /checksum/SHA256/21 894s ok 764 /checksum/SHA256/22 894s ok 765 /checksum/SHA256/23 894s ok 766 /checksum/SHA256/24 894s ok 767 /checksum/SHA256/25 894s ok 768 /checksum/SHA256/26 894s ok 769 /checksum/SHA256/27 894s ok 770 /checksum/SHA256/28 894s ok 771 /checksum/SHA256/29 894s ok 772 /checksum/SHA256/30 894s ok 773 /checksum/SHA256/31 894s ok 774 /checksum/SHA256/32 894s ok 775 /checksum/SHA256/33 894s ok 776 /checksum/SHA256/34 894s ok 777 /checksum/SHA256/35 894s ok 778 /checksum/SHA256/36 894s ok 779 /checksum/SHA256/37 894s ok 780 /checksum/SHA256/38 894s ok 781 /checksum/SHA256/39 894s ok 782 /checksum/SHA256/40 894s ok 783 /checksum/SHA256/41 894s ok 784 /checksum/SHA256/42 894s ok 785 /checksum/SHA256/43 894s ok 786 /checksum/SHA256/44 894s ok 787 /checksum/SHA256/45 894s ok 788 /checksum/SHA256/46 894s ok 789 /checksum/SHA256/47 894s ok 790 /checksum/SHA256/48 894s ok 791 /checksum/SHA256/49 894s ok 792 /checksum/SHA256/50 894s ok 793 /checksum/SHA256/51 894s ok 794 /checksum/SHA256/52 894s ok 795 /checksum/SHA256/53 894s ok 796 /checksum/SHA256/54 894s ok 797 /checksum/SHA256/55 894s ok 798 /checksum/SHA256/56 894s ok 799 /checksum/SHA256/57 894s ok 800 /checksum/SHA256/58 894s ok 801 /checksum/SHA256/59 894s ok 802 /checksum/SHA256/60 894s ok 803 /checksum/SHA256/61 894s ok 804 /checksum/SHA256/62 894s ok 805 /checksum/SHA256/63 894s ok 806 /checksum/SHA256/64 894s ok 807 /checksum/SHA256/65 894s ok 808 /checksum/SHA256/66 894s ok 809 /checksum/SHA256/67 894s ok 810 /checksum/SHA256/68 894s ok 811 /checksum/SHA256/69 894s ok 812 /checksum/SHA256/70 894s ok 813 /checksum/SHA256/71 894s ok 814 /checksum/SHA256/72 894s ok 815 /checksum/SHA256/73 894s ok 816 /checksum/SHA256/74 894s ok 817 /checksum/SHA256/75 894s ok 818 /checksum/SHA256/76 894s ok 819 /checksum/SHA256/77 894s ok 820 /checksum/SHA256/78 894s ok 821 /checksum/SHA256/79 894s ok 822 /checksum/SHA256/80 894s ok 823 /checksum/SHA256/81 894s ok 824 /checksum/SHA256/82 894s ok 825 /checksum/SHA256/83 894s ok 826 /checksum/SHA256/84 894s ok 827 /checksum/SHA256/85 894s ok 828 /checksum/SHA256/86 894s ok 829 /checksum/SHA256/87 894s ok 830 /checksum/SHA256/88 894s ok 831 /checksum/SHA256/89 894s ok 832 /checksum/SHA256/90 894s ok 833 /checksum/SHA256/91 894s ok 834 /checksum/SHA256/92 894s ok 835 /checksum/SHA256/93 894s ok 836 /checksum/SHA256/94 894s ok 837 /checksum/SHA256/95 894s ok 838 /checksum/SHA256/96 894s ok 839 /checksum/SHA256/97 894s ok 840 /checksum/SHA256/98 894s ok 841 /checksum/SHA256/99 894s ok 842 /checksum/SHA256/100 894s ok 843 /checksum/SHA256/101 894s ok 844 /checksum/SHA256/102 894s ok 845 /checksum/SHA256/103 894s ok 846 /checksum/SHA256/104 894s ok 847 /checksum/SHA256/105 894s ok 848 /checksum/SHA256/106 894s ok 849 /checksum/SHA256/107 894s ok 850 /checksum/SHA256/108 894s ok 851 /checksum/SHA256/109 894s ok 852 /checksum/SHA256/110 894s ok 853 /checksum/SHA256/111 894s ok 854 /checksum/SHA256/112 894s ok 855 /checksum/SHA256/113 894s ok 856 /checksum/SHA256/114 894s ok 857 /checksum/SHA256/115 894s ok 858 /checksum/SHA256/116 894s ok 859 /checksum/SHA256/117 894s ok 860 /checksum/SHA256/118 894s ok 861 /checksum/SHA256/119 894s ok 862 /checksum/SHA256/120 894s ok 863 /checksum/SHA256/121 894s ok 864 /checksum/SHA256/122 894s ok 865 /checksum/SHA256/123 894s ok 866 /checksum/SHA256/124 894s ok 867 /checksum/SHA256/125 894s ok 868 /checksum/SHA256/126 894s ok 869 /checksum/SHA256/127 894s ok 870 /checksum/SHA256/128 894s ok 871 /checksum/SHA256/129 894s ok 872 /checksum/SHA256/130 894s ok 873 /checksum/SHA256/131 894s ok 874 /checksum/SHA256/132 894s ok 875 /checksum/SHA256/133 894s ok 876 /checksum/SHA256/134 894s ok 877 /checksum/SHA256/135 894s ok 878 /checksum/SHA256/136 894s ok 879 /checksum/SHA256/137 894s ok 880 /checksum/SHA256/138 894s ok 881 /checksum/SHA256/139 894s ok 882 /checksum/SHA256/140 894s ok 883 /checksum/SHA256/141 894s ok 884 /checksum/SHA256/142 894s ok 885 /checksum/SHA256/143 894s ok 886 /checksum/SHA256/144 894s ok 887 /checksum/SHA256/145 894s ok 888 /checksum/SHA256/146 894s ok 889 /checksum/SHA256/147 894s ok 890 /checksum/SHA256/148 894s ok 891 /checksum/SHA256/149 894s ok 892 /checksum/SHA256/150 894s ok 893 /checksum/SHA256/151 894s ok 894 /checksum/SHA256/152 894s ok 895 /checksum/SHA256/153 894s ok 896 /checksum/SHA256/154 894s ok 897 /checksum/SHA256/155 894s ok 898 /checksum/SHA256/156 894s ok 899 /checksum/SHA256/157 894s ok 900 /checksum/SHA256/158 894s ok 901 /checksum/SHA256/159 894s ok 902 /checksum/SHA256/160 894s ok 903 /checksum/SHA256/161 894s ok 904 /checksum/SHA256/162 894s ok 905 /checksum/SHA256/163 894s ok 906 /checksum/SHA256/164 894s ok 907 /checksum/SHA256/165 894s ok 908 /checksum/SHA256/166 894s ok 909 /checksum/SHA256/167 894s ok 910 /checksum/SHA256/168 894s ok 911 /checksum/SHA256/169 894s ok 912 /checksum/SHA256/170 894s ok 913 /checksum/SHA256/171 894s ok 914 /checksum/SHA256/172 894s ok 915 /checksum/SHA256/173 894s ok 916 /checksum/SHA256/174 894s ok 917 /checksum/SHA256/175 894s ok 918 /checksum/SHA256/176 894s ok 919 /checksum/SHA256/177 894s ok 920 /checksum/SHA256/178 894s ok 921 /checksum/SHA256/179 894s ok 922 /checksum/SHA256/180 894s ok 923 /checksum/SHA256/181 894s ok 924 /checksum/SHA256/182 894s ok 925 /checksum/SHA256/183 894s ok 926 /checksum/SHA256/string 894s ok 927 /checksum/SHA256/bytes 894s # Start of reset tests 894s ok 928 /checksum/SHA256/reset/0 894s ok 929 /checksum/SHA256/reset/1 894s ok 930 /checksum/SHA256/reset/2 894s ok 931 /checksum/SHA256/reset/3 894s ok 932 /checksum/SHA256/reset/4 894s ok 933 /checksum/SHA256/reset/5 894s ok 934 /checksum/SHA256/reset/6 894s ok 935 /checksum/SHA256/reset/7 894s ok 936 /checksum/SHA256/reset/8 894s ok 937 /checksum/SHA256/reset/9 894s ok 938 /checksum/SHA256/reset/10 894s ok 939 /checksum/SHA256/reset/11 894s ok 940 /checksum/SHA256/reset/12 894s ok 941 /checksum/SHA256/reset/13 894s ok 942 /checksum/SHA256/reset/14 894s ok 943 /checksum/SHA256/reset/15 894s ok 944 /checksum/SHA256/reset/16 894s ok 945 /checksum/SHA256/reset/17 894s ok 946 /checksum/SHA256/reset/18 894s ok 947 /checksum/SHA256/reset/19 894s ok 948 /checksum/SHA256/reset/20 894s ok 949 /checksum/SHA256/reset/21 894s ok 950 /checksum/SHA256/reset/22 894s ok 951 /checksum/SHA256/reset/23 894s ok 952 /checksum/SHA256/reset/24 894s ok 953 /checksum/SHA256/reset/25 894s ok 954 /checksum/SHA256/reset/26 894s ok 955 /checksum/SHA256/reset/27 894s ok 956 /checksum/SHA256/reset/28 894s ok 957 /checksum/SHA256/reset/29 894s ok 958 /checksum/SHA256/reset/30 894s ok 959 /checksum/SHA256/reset/31 894s ok 960 /checksum/SHA256/reset/32 894s ok 961 /checksum/SHA256/reset/33 894s ok 962 /checksum/SHA256/reset/34 894s ok 963 /checksum/SHA256/reset/35 894s ok 964 /checksum/SHA256/reset/36 894s ok 965 /checksum/SHA256/reset/37 894s ok 966 /checksum/SHA256/reset/38 894s ok 967 /checksum/SHA256/reset/39 894s ok 968 /checksum/SHA256/reset/40 894s ok 969 /checksum/SHA256/reset/41 894s ok 970 /checksum/SHA256/reset/42 894s ok 971 /checksum/SHA256/reset/43 894s ok 972 /checksum/SHA256/reset/44 894s ok 973 /checksum/SHA256/reset/45 894s ok 974 /checksum/SHA256/reset/46 894s ok 975 /checksum/SHA256/reset/47 894s ok 976 /checksum/SHA256/reset/48 894s ok 977 /checksum/SHA256/reset/49 894s ok 978 /checksum/SHA256/reset/50 894s ok 979 /checksum/SHA256/reset/51 894s ok 980 /checksum/SHA256/reset/52 894s ok 981 /checksum/SHA256/reset/53 894s ok 982 /checksum/SHA256/reset/54 894s ok 983 /checksum/SHA256/reset/55 894s ok 984 /checksum/SHA256/reset/56 894s ok 985 /checksum/SHA256/reset/57 894s ok 986 /checksum/SHA256/reset/58 894s ok 987 /checksum/SHA256/reset/59 894s ok 988 /checksum/SHA256/reset/60 894s ok 989 /checksum/SHA256/reset/61 894s ok 990 /checksum/SHA256/reset/62 894s ok 991 /checksum/SHA256/reset/63 894s ok 992 /checksum/SHA256/reset/64 894s ok 993 /checksum/SHA256/reset/65 894s ok 994 /checksum/SHA256/reset/66 894s ok 995 /checksum/SHA256/reset/67 894s ok 996 /checksum/SHA256/reset/68 894s ok 997 /checksum/SHA256/reset/69 894s ok 998 /checksum/SHA256/reset/70 894s ok 999 /checksum/SHA256/reset/71 894s ok 1000 /checksum/SHA256/reset/72 894s ok 1001 /checksum/SHA256/reset/73 894s ok 1002 /checksum/SHA256/reset/74 894s ok 1003 /checksum/SHA256/reset/75 894s ok 1004 /checksum/SHA256/reset/76 894s ok 1005 /checksum/SHA256/reset/77 894s ok 1006 /checksum/SHA256/reset/78 894s ok 1007 /checksum/SHA256/reset/79 894s ok 1008 /checksum/SHA256/reset/80 894s ok 1009 /checksum/SHA256/reset/81 894s ok 1010 /checksum/SHA256/reset/82 894s ok 1011 /checksum/SHA256/reset/83 894s ok 1012 /checksum/SHA256/reset/84 894s ok 1013 /checksum/SHA256/reset/85 894s ok 1014 /checksum/SHA256/reset/86 894s ok 1015 /checksum/SHA256/reset/87 894s ok 1016 /checksum/SHA256/reset/88 894s ok 1017 /checksum/SHA256/reset/89 894s ok 1018 /checksum/SHA256/reset/90 894s ok 1019 /checksum/SHA256/reset/91 894s ok 1020 /checksum/SHA256/reset/92 894s ok 1021 /checksum/SHA256/reset/93 894s ok 1022 /checksum/SHA256/reset/94 894s ok 1023 /checksum/SHA256/reset/95 894s ok 1024 /checksum/SHA256/reset/96 894s ok 1025 /checksum/SHA256/reset/97 894s ok 1026 /checksum/SHA256/reset/98 894s ok 1027 /checksum/SHA256/reset/99 894s ok 1028 /checksum/SHA256/reset/100 894s ok 1029 /checksum/SHA256/reset/101 894s ok 1030 /checksum/SHA256/reset/102 894s ok 1031 /checksum/SHA256/reset/103 894s ok 1032 /checksum/SHA256/reset/104 894s ok 1033 /checksum/SHA256/reset/105 894s ok 1034 /checksum/SHA256/reset/106 894s ok 1035 /checksum/SHA256/reset/107 894s ok 1036 /checksum/SHA256/reset/108 894s ok 1037 /checksum/SHA256/reset/109 894s ok 1038 /checksum/SHA256/reset/110 894s ok 1039 /checksum/SHA256/reset/111 894s ok 1040 /checksum/SHA256/reset/112 894s ok 1041 /checksum/SHA256/reset/113 894s ok 1042 /checksum/SHA256/reset/114 894s ok 1043 /checksum/SHA256/reset/115 894s ok 1044 /checksum/SHA256/reset/116 894s ok 1045 /checksum/SHA256/reset/117 894s ok 1046 /checksum/SHA256/reset/118 894s ok 1047 /checksum/SHA256/reset/119 894s ok 1048 /checksum/SHA256/reset/120 894s ok 1049 /checksum/SHA256/reset/121 894s ok 1050 /checksum/SHA256/reset/122 894s ok 1051 /checksum/SHA256/reset/123 894s ok 1052 /checksum/SHA256/reset/124 894s ok 1053 /checksum/SHA256/reset/125 894s ok 1054 /checksum/SHA256/reset/126 894s ok 1055 /checksum/SHA256/reset/127 894s ok 1056 /checksum/SHA256/reset/128 894s ok 1057 /checksum/SHA256/reset/129 894s ok 1058 /checksum/SHA256/reset/130 894s ok 1059 /checksum/SHA256/reset/131 894s ok 1060 /checksum/SHA256/reset/132 894s ok 1061 /checksum/SHA256/reset/133 894s ok 1062 /checksum/SHA256/reset/134 894s ok 1063 /checksum/SHA256/reset/135 894s ok 1064 /checksum/SHA256/reset/136 894s ok 1065 /checksum/SHA256/reset/137 894s ok 1066 /checksum/SHA256/reset/138 894s ok 1067 /checksum/SHA256/reset/139 894s ok 1068 /checksum/SHA256/reset/140 894s ok 1069 /checksum/SHA256/reset/141 894s ok 1070 /checksum/SHA256/reset/142 894s ok 1071 /checksum/SHA256/reset/143 894s ok 1072 /checksum/SHA256/reset/144 894s ok 1073 /checksum/SHA256/reset/145 894s ok 1074 /checksum/SHA256/reset/146 894s ok 1075 /checksum/SHA256/reset/147 894s ok 1076 /checksum/SHA256/reset/148 894s ok 1077 /checksum/SHA256/reset/149 894s ok 1078 /checksum/SHA256/reset/150 894s ok 1079 /checksum/SHA256/reset/151 894s ok 1080 /checksum/SHA256/reset/152 894s ok 1081 /checksum/SHA256/reset/153 894s ok 1082 /checksum/SHA256/reset/154 894s ok 1083 /checksum/SHA256/reset/155 894s ok 1084 /checksum/SHA256/reset/156 894s ok 1085 /checksum/SHA256/reset/157 894s ok 1086 /checksum/SHA256/reset/158 894s ok 1087 /checksum/SHA256/reset/159 894s ok 1088 /checksum/SHA256/reset/160 894s ok 1089 /checksum/SHA256/reset/161 894s ok 1090 /checksum/SHA256/reset/162 894s ok 1091 /checksum/SHA256/reset/163 894s ok 1092 /checksum/SHA256/reset/164 894s ok 1093 /checksum/SHA256/reset/165 894s ok 1094 /checksum/SHA256/reset/166 894s ok 1095 /checksum/SHA256/reset/167 894s ok 1096 /checksum/SHA256/reset/168 894s ok 1097 /checksum/SHA256/reset/169 894s ok 1098 /checksum/SHA256/reset/170 894s ok 1099 /checksum/SHA256/reset/171 894s ok 1100 /checksum/SHA256/reset/172 894s ok 1101 /checksum/SHA256/reset/173 894s ok 1102 /checksum/SHA256/reset/174 894s ok 1103 /checksum/SHA256/reset/175 894s ok 1104 /checksum/SHA256/reset/176 894s ok 1105 /checksum/SHA256/reset/177 894s ok 1106 /checksum/SHA256/reset/178 894s ok 1107 /checksum/SHA256/reset/179 894s ok 1108 /checksum/SHA256/reset/180 894s ok 1109 /checksum/SHA256/reset/181 894s ok 1110 /checksum/SHA256/reset/182 894s ok 1111 /checksum/SHA256/reset/183 894s # End of reset tests 894s # End of SHA256 tests 894s # Start of SHA384 tests 894s ok 1112 /checksum/SHA384/0 894s ok 1113 /checksum/SHA384/1 894s ok 1114 /checksum/SHA384/2 894s ok 1115 /checksum/SHA384/3 894s ok 1116 /checksum/SHA384/4 894s ok 1117 /checksum/SHA384/5 894s ok 1118 /checksum/SHA384/6 894s ok 1119 /checksum/SHA384/7 894s ok 1120 /checksum/SHA384/8 894s ok 1121 /checksum/SHA384/9 894s ok 1122 /checksum/SHA384/10 894s ok 1123 /checksum/SHA384/11 894s ok 1124 /checksum/SHA384/12 894s ok 1125 /checksum/SHA384/13 894s ok 1126 /checksum/SHA384/14 894s ok 1127 /checksum/SHA384/15 894s ok 1128 /checksum/SHA384/16 894s ok 1129 /checksum/SHA384/17 894s ok 1130 /checksum/SHA384/18 894s ok 1131 /checksum/SHA384/19 894s ok 1132 /checksum/SHA384/20 894s ok 1133 /checksum/SHA384/21 894s ok 1134 /checksum/SHA384/22 894s ok 1135 /checksum/SHA384/23 894s ok 1136 /checksum/SHA384/24 894s ok 1137 /checksum/SHA384/25 894s ok 1138 /checksum/SHA384/26 894s ok 1139 /checksum/SHA384/27 894s ok 1140 /checksum/SHA384/28 894s ok 1141 /checksum/SHA384/29 894s ok 1142 /checksum/SHA384/30 894s ok 1143 /checksum/SHA384/31 894s ok 1144 /checksum/SHA384/32 894s ok 1145 /checksum/SHA384/33 894s ok 1146 /checksum/SHA384/34 894s ok 1147 /checksum/SHA384/35 894s ok 1148 /checksum/SHA384/36 894s ok 1149 /checksum/SHA384/37 894s ok 1150 /checksum/SHA384/38 894s ok 1151 /checksum/SHA384/39 894s ok 1152 /checksum/SHA384/40 894s ok 1153 /checksum/SHA384/41 894s ok 1154 /checksum/SHA384/42 894s ok 1155 /checksum/SHA384/43 894s ok 1156 /checksum/SHA384/44 894s ok 1157 /checksum/SHA384/45 894s ok 1158 /checksum/SHA384/46 894s ok 1159 /checksum/SHA384/47 894s ok 1160 /checksum/SHA384/48 894s ok 1161 /checksum/SHA384/49 894s ok 1162 /checksum/SHA384/50 894s ok 1163 /checksum/SHA384/51 894s ok 1164 /checksum/SHA384/52 894s ok 1165 /checksum/SHA384/53 894s ok 1166 /checksum/SHA384/54 894s ok 1167 /checksum/SHA384/55 894s ok 1168 /checksum/SHA384/56 894s ok 1169 /checksum/SHA384/57 894s ok 1170 /checksum/SHA384/58 894s ok 1171 /checksum/SHA384/59 894s ok 1172 /checksum/SHA384/60 894s ok 1173 /checksum/SHA384/61 894s ok 1174 /checksum/SHA384/62 894s ok 1175 /checksum/SHA384/63 894s ok 1176 /checksum/SHA384/64 894s ok 1177 /checksum/SHA384/65 894s ok 1178 /checksum/SHA384/66 894s ok 1179 /checksum/SHA384/67 894s ok 1180 /checksum/SHA384/68 894s ok 1181 /checksum/SHA384/69 894s ok 1182 /checksum/SHA384/70 894s ok 1183 /checksum/SHA384/71 894s ok 1184 /checksum/SHA384/72 894s ok 1185 /checksum/SHA384/73 894s ok 1186 /checksum/SHA384/74 894s ok 1187 /checksum/SHA384/75 894s ok 1188 /checksum/SHA384/76 894s ok 1189 /checksum/SHA384/77 894s ok 1190 /checksum/SHA384/78 894s ok 1191 /checksum/SHA384/79 894s ok 1192 /checksum/SHA384/80 894s ok 1193 /checksum/SHA384/81 894s ok 1194 /checksum/SHA384/82 894s ok 1195 /checksum/SHA384/83 894s ok 1196 /checksum/SHA384/84 894s ok 1197 /checksum/SHA384/85 894s ok 1198 /checksum/SHA384/86 894s ok 1199 /checksum/SHA384/87 894s ok 1200 /checksum/SHA384/88 894s ok 1201 /checksum/SHA384/89 894s ok 1202 /checksum/SHA384/90 894s ok 1203 /checksum/SHA384/91 894s ok 1204 /checksum/SHA384/92 894s ok 1205 /checksum/SHA384/93 894s ok 1206 /checksum/SHA384/94 894s ok 1207 /checksum/SHA384/95 894s ok 1208 /checksum/SHA384/96 894s ok 1209 /checksum/SHA384/97 894s ok 1210 /checksum/SHA384/98 894s ok 1211 /checksum/SHA384/99 894s ok 1212 /checksum/SHA384/100 894s ok 1213 /checksum/SHA384/101 894s ok 1214 /checksum/SHA384/102 894s ok 1215 /checksum/SHA384/103 894s ok 1216 /checksum/SHA384/104 894s ok 1217 /checksum/SHA384/105 894s ok 1218 /checksum/SHA384/106 894s ok 1219 /checksum/SHA384/107 894s ok 1220 /checksum/SHA384/108 894s ok 1221 /checksum/SHA384/109 894s ok 1222 /checksum/SHA384/110 894s ok 1223 /checksum/SHA384/111 894s ok 1224 /checksum/SHA384/112 894s ok 1225 /checksum/SHA384/113 894s ok 1226 /checksum/SHA384/114 894s ok 1227 /checksum/SHA384/115 894s ok 1228 /checksum/SHA384/116 894s ok 1229 /checksum/SHA384/117 894s ok 1230 /checksum/SHA384/118 894s ok 1231 /checksum/SHA384/119 894s ok 1232 /checksum/SHA384/120 894s ok 1233 /checksum/SHA384/121 894s ok 1234 /checksum/SHA384/122 894s ok 1235 /checksum/SHA384/123 894s ok 1236 /checksum/SHA384/124 894s ok 1237 /checksum/SHA384/125 894s ok 1238 /checksum/SHA384/126 894s ok 1239 /checksum/SHA384/127 894s ok 1240 /checksum/SHA384/128 894s ok 1241 /checksum/SHA384/129 894s ok 1242 /checksum/SHA384/130 894s ok 1243 /checksum/SHA384/131 894s ok 1244 /checksum/SHA384/132 894s ok 1245 /checksum/SHA384/133 894s ok 1246 /checksum/SHA384/134 894s ok 1247 /checksum/SHA384/135 894s ok 1248 /checksum/SHA384/136 894s ok 1249 /checksum/SHA384/137 894s ok 1250 /checksum/SHA384/138 894s ok 1251 /checksum/SHA384/139 894s ok 1252 /checksum/SHA384/140 894s ok 1253 /checksum/SHA384/141 894s ok 1254 /checksum/SHA384/142 894s ok 1255 /checksum/SHA384/143 894s ok 1256 /checksum/SHA384/144 894s ok 1257 /checksum/SHA384/145 894s ok 1258 /checksum/SHA384/146 894s ok 1259 /checksum/SHA384/147 894s ok 1260 /checksum/SHA384/148 894s ok 1261 /checksum/SHA384/149 894s ok 1262 /checksum/SHA384/150 894s ok 1263 /checksum/SHA384/151 894s ok 1264 /checksum/SHA384/152 894s ok 1265 /checksum/SHA384/153 894s ok 1266 /checksum/SHA384/154 894s ok 1267 /checksum/SHA384/155 894s ok 1268 /checksum/SHA384/156 894s ok 1269 /checksum/SHA384/157 894s ok 1270 /checksum/SHA384/158 894s ok 1271 /checksum/SHA384/159 894s ok 1272 /checksum/SHA384/160 894s ok 1273 /checksum/SHA384/161 894s ok 1274 /checksum/SHA384/162 894s ok 1275 /checksum/SHA384/163 894s ok 1276 /checksum/SHA384/164 894s ok 1277 /checksum/SHA384/165 894s ok 1278 /checksum/SHA384/166 894s ok 1279 /checksum/SHA384/167 894s ok 1280 /checksum/SHA384/168 894s ok 1281 /checksum/SHA384/169 894s ok 1282 /checksum/SHA384/170 894s ok 1283 /checksum/SHA384/171 894s ok 1284 /checksum/SHA384/172 894s ok 1285 /checksum/SHA384/173 894s ok 1286 /checksum/SHA384/174 894s ok 1287 /checksum/SHA384/175 894s ok 1288 /checksum/SHA384/176 894s ok 1289 /checksum/SHA384/177 894s ok 1290 /checksum/SHA384/178 894s ok 1291 /checksum/SHA384/179 894s ok 1292 /checksum/SHA384/180 894s ok 1293 /checksum/SHA384/181 894s ok 1294 /checksum/SHA384/182 894s ok 1295 /checksum/SHA384/183 894s ok 1296 /checksum/SHA384/string 894s ok 1297 /checksum/SHA384/bytes 894s # Start of reset tests 894s ok 1298 /checksum/SHA384/reset/0 894s ok 1299 /checksum/SHA384/reset/1 894s ok 1300 /checksum/SHA384/reset/2 894s ok 1301 /checksum/SHA384/reset/3 894s ok 1302 /checksum/SHA384/reset/4 894s ok 1303 /checksum/SHA384/reset/5 894s ok 1304 /checksum/SHA384/reset/6 894s ok 1305 /checksum/SHA384/reset/7 894s ok 1306 /checksum/SHA384/reset/8 894s ok 1307 /checksum/SHA384/reset/9 894s ok 1308 /checksum/SHA384/reset/10 894s ok 1309 /checksum/SHA384/reset/11 894s ok 1310 /checksum/SHA384/reset/12 894s ok 1311 /checksum/SHA384/reset/13 894s ok 1312 /checksum/SHA384/reset/14 894s ok 1313 /checksum/SHA384/reset/15 894s ok 1314 /checksum/SHA384/reset/16 894s ok 1315 /checksum/SHA384/reset/17 894s ok 1316 /checksum/SHA384/reset/18 894s ok 1317 /checksum/SHA384/reset/19 894s ok 1318 /checksum/SHA384/reset/20 894s ok 1319 /checksum/SHA384/reset/21 894s ok 1320 /checksum/SHA384/reset/22 894s ok 1321 /checksum/SHA384/reset/23 894s ok 1322 /checksum/SHA384/reset/24 894s ok 1323 /checksum/SHA384/reset/25 894s ok 1324 /checksum/SHA384/reset/26 894s ok 1325 /checksum/SHA384/reset/27 894s ok 1326 /checksum/SHA384/reset/28 894s ok 1327 /checksum/SHA384/reset/29 894s ok 1328 /checksum/SHA384/reset/30 894s ok 1329 /checksum/SHA384/reset/31 894s ok 1330 /checksum/SHA384/reset/32 894s ok 1331 /checksum/SHA384/reset/33 894s ok 1332 /checksum/SHA384/reset/34 894s ok 1333 /checksum/SHA384/reset/35 894s ok 1334 /checksum/SHA384/reset/36 894s ok 1335 /checksum/SHA384/reset/37 894s ok 1336 /checksum/SHA384/reset/38 894s ok 1337 /checksum/SHA384/reset/39 894s ok 1338 /checksum/SHA384/reset/40 894s ok 1339 /checksum/SHA384/reset/41 894s ok 1340 /checksum/SHA384/reset/42 894s ok 1341 /checksum/SHA384/reset/43 894s ok 1342 /checksum/SHA384/reset/44 894s ok 1343 /checksum/SHA384/reset/45 894s ok 1344 /checksum/SHA384/reset/46 894s ok 1345 /checksum/SHA384/reset/47 894s ok 1346 /checksum/SHA384/reset/48 894s ok 1347 /checksum/SHA384/reset/49 894s ok 1348 /checksum/SHA384/reset/50 894s ok 1349 /checksum/SHA384/reset/51 894s ok 1350 /checksum/SHA384/reset/52 894s ok 1351 /checksum/SHA384/reset/53 894s ok 1352 /checksum/SHA384/reset/54 894s ok 1353 /checksum/SHA384/reset/55 894s ok 1354 /checksum/SHA384/reset/56 894s ok 1355 /checksum/SHA384/reset/57 894s ok 1356 /checksum/SHA384/reset/58 894s ok 1357 /checksum/SHA384/reset/59 894s ok 1358 /checksum/SHA384/reset/60 894s ok 1359 /checksum/SHA384/reset/61 894s ok 1360 /checksum/SHA384/reset/62 894s ok 1361 /checksum/SHA384/reset/63 894s ok 1362 /checksum/SHA384/reset/64 894s ok 1363 /checksum/SHA384/reset/65 894s ok 1364 /checksum/SHA384/reset/66 894s ok 1365 /checksum/SHA384/reset/67 894s ok 1366 /checksum/SHA384/reset/68 894s ok 1367 /checksum/SHA384/reset/69 894s ok 1368 /checksum/SHA384/reset/70 894s ok 1369 /checksum/SHA384/reset/71 894s ok 1370 /checksum/SHA384/reset/72 894s ok 1371 /checksum/SHA384/reset/73 894s ok 1372 /checksum/SHA384/reset/74 894s ok 1373 /checksum/SHA384/reset/75 894s ok 1374 /checksum/SHA384/reset/76 894s ok 1375 /checksum/SHA384/reset/77 894s ok 1376 /checksum/SHA384/reset/78 894s ok 1377 /checksum/SHA384/reset/79 894s ok 1378 /checksum/SHA384/reset/80 894s ok 1379 /checksum/SHA384/reset/81 894s ok 1380 /checksum/SHA384/reset/82 894s ok 1381 /checksum/SHA384/reset/83 894s ok 1382 /checksum/SHA384/reset/84 894s ok 1383 /checksum/SHA384/reset/85 894s ok 1384 /checksum/SHA384/reset/86 894s ok 1385 /checksum/SHA384/reset/87 894s ok 1386 /checksum/SHA384/reset/88 894s ok 1387 /checksum/SHA384/reset/89 894s ok 1388 /checksum/SHA384/reset/90 894s ok 1389 /checksum/SHA384/reset/91 894s ok 1390 /checksum/SHA384/reset/92 894s ok 1391 /checksum/SHA384/reset/93 894s ok 1392 /checksum/SHA384/reset/94 894s ok 1393 /checksum/SHA384/reset/95 894s ok 1394 /checksum/SHA384/reset/96 894s ok 1395 /checksum/SHA384/reset/97 894s ok 1396 /checksum/SHA384/reset/98 894s ok 1397 /checksum/SHA384/reset/99 894s ok 1398 /checksum/SHA384/reset/100 894s ok 1399 /checksum/SHA384/reset/101 894s ok 1400 /checksum/SHA384/reset/102 894s ok 1401 /checksum/SHA384/reset/103 894s ok 1402 /checksum/SHA384/reset/104 894s ok 1403 /checksum/SHA384/reset/105 894s ok 1404 /checksum/SHA384/reset/106 894s ok 1405 /checksum/SHA384/reset/107 894s ok 1406 /checksum/SHA384/reset/108 894s ok 1407 /checksum/SHA384/reset/109 894s ok 1408 /checksum/SHA384/reset/110 894s ok 1409 /checksum/SHA384/reset/111 894s ok 1410 /checksum/SHA384/reset/112 894s ok 1411 /checksum/SHA384/reset/113 894s ok 1412 /checksum/SHA384/reset/114 894s ok 1413 /checksum/SHA384/reset/115 894s ok 1414 /checksum/SHA384/reset/116 894s ok 1415 /checksum/SHA384/reset/117 894s ok 1416 /checksum/SHA384/reset/118 894s ok 1417 /checksum/SHA384/reset/119 894s ok 1418 /checksum/SHA384/reset/120 894s ok 1419 /checksum/SHA384/reset/121 894s ok 1420 /checksum/SHA384/reset/122 894s ok 1421 /checksum/SHA384/reset/123 894s ok 1422 /checksum/SHA384/reset/124 894s ok 1423 /checksum/SHA384/reset/125 894s ok 1424 /checksum/SHA384/reset/126 894s ok 1425 /checksum/SHA384/reset/127 894s ok 1426 /checksum/SHA384/reset/128 894s ok 1427 /checksum/SHA384/reset/129 894s ok 1428 /checksum/SHA384/reset/130 894s ok 1429 /checksum/SHA384/reset/131 894s ok 1430 /checksum/SHA384/reset/132 894s ok 1431 /checksum/SHA384/reset/133 894s ok 1432 /checksum/SHA384/reset/134 894s ok 1433 /checksum/SHA384/reset/135 894s ok 1434 /checksum/SHA384/reset/136 894s ok 1435 /checksum/SHA384/reset/137 894s ok 1436 /checksum/SHA384/reset/138 894s ok 1437 /checksum/SHA384/reset/139 894s ok 1438 /checksum/SHA384/reset/140 894s ok 1439 /checksum/SHA384/reset/141 894s ok 1440 /checksum/SHA384/reset/142 894s ok 1441 /checksum/SHA384/reset/143 894s ok 1442 /checksum/SHA384/reset/144 894s ok 1443 /checksum/SHA384/reset/145 894s ok 1444 /checksum/SHA384/reset/146 894s ok 1445 /checksum/SHA384/reset/147 894s ok 1446 /checksum/SHA384/reset/148 894s ok 1447 /checksum/SHA384/reset/149 894s ok 1448 /checksum/SHA384/reset/150 894s ok 1449 /checksum/SHA384/reset/151 894s ok 1450 /checksum/SHA384/reset/152 894s ok 1451 /checksum/SHA384/reset/153 894s ok 1452 /checksum/SHA384/reset/154 894s ok 1453 /checksum/SHA384/reset/155 894s ok 1454 /checksum/SHA384/reset/156 894s ok 1455 /checksum/SHA384/reset/157 894s ok 1456 /checksum/SHA384/reset/158 894s ok 1457 /checksum/SHA384/reset/159 894s ok 1458 /checksum/SHA384/reset/160 894s ok 1459 /checksum/SHA384/reset/161 894s ok 1460 /checksum/SHA384/reset/162 894s ok 1461 /checksum/SHA384/reset/163 894s ok 1462 /checksum/SHA384/reset/164 894s ok 1463 /checksum/SHA384/reset/165 894s ok 1464 /checksum/SHA384/reset/166 894s ok 1465 /checksum/SHA384/reset/167 894s ok 1466 /checksum/SHA384/reset/168 894s ok 1467 /checksum/SHA384/reset/169 894s ok 1468 /checksum/SHA384/reset/170 894s ok 1469 /checksum/SHA384/reset/171 894s ok 1470 /checksum/SHA384/reset/172 894s ok 1471 /checksum/SHA384/reset/173 894s ok 1472 /checksum/SHA384/reset/174 894s ok 1473 /checksum/SHA384/reset/175 894s ok 1474 /checksum/SHA384/reset/176 894s ok 1475 /checksum/SHA384/reset/177 894s ok 1476 /checksum/SHA384/reset/178 894s ok 1477 /checksum/SHA384/reset/179 894s ok 1478 /checksum/SHA384/reset/180 894s ok 1479 /checksum/SHA384/reset/181 894s ok 1480 /checksum/SHA384/reset/182 894s ok 1481 /checksum/SHA384/reset/183 894s # End of reset tests 894s # End of SHA384 tests 894s # Start of SHA512 tests 894s ok 1482 /checksum/SHA512/0 894s ok 1483 /checksum/SHA512/1 894s ok 1484 /checksum/SHA512/2 894s ok 1485 /checksum/SHA512/3 894s ok 1486 /checksum/SHA512/4 894s ok 1487 /checksum/SHA512/5 894s ok 1488 /checksum/SHA512/6 894s ok 1489 /checksum/SHA512/7 894s ok 1490 /checksum/SHA512/8 894s ok 1491 /checksum/SHA512/9 894s ok 1492 /checksum/SHA512/10 894s ok 1493 /checksum/SHA512/11 894s ok 1494 /checksum/SHA512/12 894s ok 1495 /checksum/SHA512/13 894s ok 1496 /checksum/SHA512/14 894s ok 1497 /checksum/SHA512/15 894s ok 1498 /checksum/SHA512/16 894s ok 1499 /checksum/SHA512/17 894s ok 1500 /checksum/SHA512/18 894s ok 1501 /checksum/SHA512/19 894s ok 1502 /checksum/SHA512/20 894s ok 1503 /checksum/SHA512/21 894s ok 1504 /checksum/SHA512/22 894s ok 1505 /checksum/SHA512/23 894s ok 1506 /checksum/SHA512/24 894s ok 1507 /checksum/SHA512/25 894s ok 1508 /checksum/SHA512/26 894s ok 1509 /checksum/SHA512/27 894s ok 1510 /checksum/SHA512/28 894s ok 1511 /checksum/SHA512/29 894s ok 1512 /checksum/SHA512/30 894s ok 1513 /checksum/SHA512/31 894s ok 1514 /checksum/SHA512/32 894s ok 1515 /checksum/SHA512/33 894s ok 1516 /checksum/SHA512/34 894s ok 1517 /checksum/SHA512/35 894s ok 1518 /checksum/SHA512/36 894s ok 1519 /checksum/SHA512/37 894s ok 1520 /checksum/SHA512/38 894s ok 1521 /checksum/SHA512/39 894s ok 1522 /checksum/SHA512/40 894s ok 1523 /checksum/SHA512/41 894s ok 1524 /checksum/SHA512/42 894s ok 1525 /checksum/SHA512/43 894s ok 1526 /checksum/SHA512/44 894s ok 1527 /checksum/SHA512/45 894s ok 1528 /checksum/SHA512/46 894s ok 1529 /checksum/SHA512/47 894s ok 1530 /checksum/SHA512/48 894s ok 1531 /checksum/SHA512/49 894s ok 1532 /checksum/SHA512/50 894s ok 1533 /checksum/SHA512/51 894s ok 1534 /checksum/SHA512/52 894s ok 1535 /checksum/SHA512/53 894s ok 1536 /checksum/SHA512/54 894s ok 1537 /checksum/SHA512/55 894s ok 1538 /checksum/SHA512/56 894s ok 1539 /checksum/SHA512/57 894s ok 1540 /checksum/SHA512/58 894s ok 1541 /checksum/SHA512/59 894s ok 1542 /checksum/SHA512/60 894s ok 1543 /checksum/SHA512/61 894s ok 1544 /checksum/SHA512/62 894s ok 1545 /checksum/SHA512/63 894s ok 1546 /checksum/SHA512/64 894s ok 1547 /checksum/SHA512/65 894s ok 1548 /checksum/SHA512/66 894s ok 1549 /checksum/SHA512/67 894s ok 1550 /checksum/SHA512/68 894s ok 1551 /checksum/SHA512/69 894s ok 1552 /checksum/SHA512/70 894s ok 1553 /checksum/SHA512/71 894s ok 1554 /checksum/SHA512/72 894s ok 1555 /checksum/SHA512/73 894s ok 1556 /checksum/SHA512/74 894s ok 1557 /checksum/SHA512/75 894s ok 1558 /checksum/SHA512/76 894s ok 1559 /checksum/SHA512/77 894s ok 1560 /checksum/SHA512/78 894s ok 1561 /checksum/SHA512/79 894s ok 1562 /checksum/SHA512/80 894s ok 1563 /checksum/SHA512/81 894s ok 1564 /checksum/SHA512/82 894s ok 1565 /checksum/SHA512/83 894s ok 1566 /checksum/SHA512/84 894s ok 1567 /checksum/SHA512/85 894s ok 1568 /checksum/SHA512/86 894s ok 1569 /checksum/SHA512/87 894s ok 1570 /checksum/SHA512/88 894s ok 1571 /checksum/SHA512/89 894s ok 1572 /checksum/SHA512/90 894s ok 1573 /checksum/SHA512/91 894s ok 1574 /checksum/SHA512/92 894s ok 1575 /checksum/SHA512/93 894s ok 1576 /checksum/SHA512/94 894s ok 1577 /checksum/SHA512/95 894s ok 1578 /checksum/SHA512/96 894s ok 1579 /checksum/SHA512/97 894s ok 1580 /checksum/SHA512/98 894s ok 1581 /checksum/SHA512/99 894s ok 1582 /checksum/SHA512/100 894s ok 1583 /checksum/SHA512/101 894s ok 1584 /checksum/SHA512/102 894s ok 1585 /checksum/SHA512/103 894s ok 1586 /checksum/SHA512/104 894s ok 1587 /checksum/SHA512/105 894s ok 1588 /checksum/SHA512/106 894s ok 1589 /checksum/SHA512/107 894s ok 1590 /checksum/SHA512/108 894s ok 1591 /checksum/SHA512/109 894s ok 1592 /checksum/SHA512/110 894s ok 1593 /checksum/SHA512/111 894s ok 1594 /checksum/SHA512/112 894s ok 1595 /checksum/SHA512/113 894s ok 1596 /checksum/SHA512/114 894s ok 1597 /checksum/SHA512/115 894s ok 1598 /checksum/SHA512/116 894s ok 1599 /checksum/SHA512/117 894s ok 1600 /checksum/SHA512/118 894s ok 1601 /checksum/SHA512/119 894s ok 1602 /checksum/SHA512/120 894s ok 1603 /checksum/SHA512/121 894s ok 1604 /checksum/SHA512/122 894s ok 1605 /checksum/SHA512/123 894s ok 1606 /checksum/SHA512/124 894s ok 1607 /checksum/SHA512/125 894s ok 1608 /checksum/SHA512/126 894s ok 1609 /checksum/SHA512/127 894s ok 1610 /checksum/SHA512/128 894s ok 1611 /checksum/SHA512/129 894s ok 1612 /checksum/SHA512/130 894s ok 1613 /checksum/SHA512/131 894s ok 1614 /checksum/SHA512/132 894s ok 1615 /checksum/SHA512/133 894s ok 1616 /checksum/SHA512/134 894s ok 1617 /checksum/SHA512/135 894s ok 1618 /checksum/SHA512/136 894s ok 1619 /checksum/SHA512/137 894s ok 1620 /checksum/SHA512/138 894s ok 1621 /checksum/SHA512/139 894s ok 1622 /checksum/SHA512/140 894s ok 1623 /checksum/SHA512/141 894s ok 1624 /checksum/SHA512/142 894s ok 1625 /checksum/SHA512/143 894s ok 1626 /checksum/SHA512/144 894s ok 1627 /checksum/SHA512/145 894s ok 1628 /checksum/SHA512/146 894s ok 1629 /checksum/SHA512/147 894s ok 1630 /checksum/SHA512/148 894s ok 1631 /checksum/SHA512/149 894s ok 1632 /checksum/SHA512/150 894s ok 1633 /checksum/SHA512/151 894s ok 1634 /checksum/SHA512/152 894s ok 1635 /checksum/SHA512/153 894s ok 1636 /checksum/SHA512/154 894s ok 1637 /checksum/SHA512/155 894s ok 1638 /checksum/SHA512/156 894s ok 1639 /checksum/SHA512/157 894s ok 1640 /checksum/SHA512/158 894s ok 1641 /checksum/SHA512/159 894s ok 1642 /checksum/SHA512/160 894s ok 1643 /checksum/SHA512/161 894s ok 1644 /checksum/SHA512/162 894s ok 1645 /checksum/SHA512/163 894s ok 1646 /checksum/SHA512/164 894s ok 1647 /checksum/SHA512/165 894s ok 1648 /checksum/SHA512/166 894s ok 1649 /checksum/SHA512/167 894s ok 1650 /checksum/SHA512/168 894s ok 1651 /checksum/SHA512/169 894s ok 1652 /checksum/SHA512/170 894s ok 1653 /checksum/SHA512/171 894s ok 1654 /checksum/SHA512/172 894s ok 1655 /checksum/SHA512/173 894s ok 1656 /checksum/SHA512/174 894s ok 1657 /checksum/SHA512/175 894s ok 1658 /checksum/SHA512/176 894s ok 1659 /checksum/SHA512/177 894s ok 1660 /checksum/SHA512/178 894s ok 1661 /checksum/SHA512/179 894s ok 1662 /checksum/SHA512/180 894s ok 1663 /checksum/SHA512/181 894s ok 1664 /checksum/SHA512/182 894s ok 1665 /checksum/SHA512/183 894s ok 1666 /checksum/SHA512/string 894s ok 1667 /checksum/SHA512/bytes 894s # Start of reset tests 894s ok 1668 /checksum/SHA512/reset/0 894s ok 1669 /checksum/SHA512/reset/1 894s ok 1670 /checksum/SHA512/reset/2 894s ok 1671 /checksum/SHA512/reset/3 894s ok 1672 /checksum/SHA512/reset/4 894s ok 1673 /checksum/SHA512/reset/5 894s ok 1674 /checksum/SHA512/reset/6 894s ok 1675 /checksum/SHA512/reset/7 894s ok 1676 /checksum/SHA512/reset/8 894s ok 1677 /checksum/SHA512/reset/9 894s ok 1678 /checksum/SHA512/reset/10 894s ok 1679 /checksum/SHA512/reset/11 894s ok 1680 /checksum/SHA512/reset/12 894s ok 1681 /checksum/SHA512/reset/13 894s ok 1682 /checksum/SHA512/reset/14 894s ok 1683 /checksum/SHA512/reset/15 894s ok 1684 /checksum/SHA512/reset/16 894s ok 1685 /checksum/SHA512/reset/17 894s ok 1686 /checksum/SHA512/reset/18 894s ok 1687 /checksum/SHA512/reset/19 894s ok 1688 /checksum/SHA512/reset/20 894s ok 1689 /checksum/SHA512/reset/21 894s ok 1690 /checksum/SHA512/reset/22 894s ok 1691 /checksum/SHA512/reset/23 894s ok 1692 /checksum/SHA512/reset/24 894s ok 1693 /checksum/SHA512/reset/25 894s ok 1694 /checksum/SHA512/reset/26 894s ok 1695 /checksum/SHA512/reset/27 894s ok 1696 /checksum/SHA512/reset/28 894s ok 1697 /checksum/SHA512/reset/29 894s ok 1698 /checksum/SHA512/reset/30 894s ok 1699 /checksum/SHA512/reset/31 894s ok 1700 /checksum/SHA512/reset/32 894s ok 1701 /checksum/SHA512/reset/33 894s ok 1702 /checksum/SHA512/reset/34 894s ok 1703 /checksum/SHA512/reset/35 894s ok 1704 /checksum/SHA512/reset/36 894s ok 1705 /checksum/SHA512/reset/37 894s ok 1706 /checksum/SHA512/reset/38 894s ok 1707 /checksum/SHA512/reset/39 894s ok 1708 /checksum/SHA512/reset/40 894s ok 1709 /checksum/SHA512/reset/41 894s ok 1710 /checksum/SHA512/reset/42 894s ok 1711 /checksum/SHA512/reset/43 894s ok 1712 /checksum/SHA512/reset/44 894s ok 1713 /checksum/SHA512/reset/45 894s ok 1714 /checksum/SHA512/reset/46 894s ok 1715 /checksum/SHA512/reset/47 894s ok 1716 /checksum/SHA512/reset/48 894s ok 1717 /checksum/SHA512/reset/49 894s ok 1718 /checksum/SHA512/reset/50 894s ok 1719 /checksum/SHA512/reset/51 894s ok 1720 /checksum/SHA512/reset/52 894s ok 1721 /checksum/SHA512/reset/53 894s ok 1722 /checksum/SHA512/reset/54 894s ok 1723 /checksum/SHA512/reset/55 894s ok 1724 /checksum/SHA512/reset/56 894s ok 1725 /checksum/SHA512/reset/57 894s ok 1726 /checksum/SHA512/reset/58 894s ok 1727 /checksum/SHA512/reset/59 894s ok 1728 /checksum/SHA512/reset/60 894s ok 1729 /checksum/SHA512/reset/61 894s ok 1730 /checksum/SHA512/reset/62 894s ok 1731 /checksum/SHA512/reset/63 894s ok 1732 /checksum/SHA512/reset/64 894s ok 1733 /checksum/SHA512/reset/65 894s ok 1734 /checksum/SHA512/reset/66 894s ok 1735 /checksum/SHA512/reset/67 894s ok 1736 /checksum/SHA512/reset/68 894s ok 1737 /checksum/SHA512/reset/69 894s ok 1738 /checksum/SHA512/reset/70 894s ok 1739 /checksum/SHA512/reset/71 894s ok 1740 /checksum/SHA512/reset/72 894s ok 1741 /checksum/SHA512/reset/73 894s ok 1742 /checksum/SHA512/reset/74 894s ok 1743 /checksum/SHA512/reset/75 894s ok 1744 /checksum/SHA512/reset/76 894s ok 1745 /checksum/SHA512/reset/77 894s ok 1746 /checksum/SHA512/reset/78 894s ok 1747 /checksum/SHA512/reset/79 894s ok 1748 /checksum/SHA512/reset/80 894s ok 1749 /checksum/SHA512/reset/81 894s ok 1750 /checksum/SHA512/reset/82 894s ok 1751 /checksum/SHA512/reset/83 894s ok 1752 /checksum/SHA512/reset/84 894s ok 1753 /checksum/SHA512/reset/85 894s ok 1754 /checksum/SHA512/reset/86 894s ok 1755 /checksum/SHA512/reset/87 894s ok 1756 /checksum/SHA512/reset/88 894s ok 1757 /checksum/SHA512/reset/89 894s ok 1758 /checksum/SHA512/reset/90 894s ok 1759 /checksum/SHA512/reset/91 894s ok 1760 /checksum/SHA512/reset/92 894s ok 1761 /checksum/SHA512/reset/93 894s ok 1762 /checksum/SHA512/reset/94 894s ok 1763 /checksum/SHA512/reset/95 894s ok 1764 /checksum/SHA512/reset/96 894s ok 1765 /checksum/SHA512/reset/97 894s ok 1766 /checksum/SHA512/reset/98 894s ok 1767 /checksum/SHA512/reset/99 894s ok 1768 /checksum/SHA512/reset/100 894s ok 1769 /checksum/SHA512/reset/101 894s ok 1770 /checksum/SHA512/reset/102 894s ok 1771 /checksum/SHA512/reset/103 894s ok 1772 /checksum/SHA512/reset/104 894s ok 1773 /checksum/SHA512/reset/105 894s ok 1774 /checksum/SHA512/reset/106 894s ok 1775 /checksum/SHA512/reset/107 894s ok 1776 /checksum/SHA512/reset/108 894s ok 1777 /checksum/SHA512/reset/109 894s ok 1778 /checksum/SHA512/reset/110 894s ok 1779 /checksum/SHA512/reset/111 894s ok 1780 /checksum/SHA512/reset/112 894s ok 1781 /checksum/SHA512/reset/113 894s ok 1782 /checksum/SHA512/reset/114 894s ok 1783 /checksum/SHA512/reset/115 894s ok 1784 /checksum/SHA512/reset/116 894s ok 1785 /checksum/SHA512/reset/117 894s ok 1786 /checksum/SHA512/reset/118 894s ok 1787 /checksum/SHA512/reset/119 894s ok 1788 /checksum/SHA512/reset/120 894s ok 1789 /checksum/SHA512/reset/121 894s ok 1790 /checksum/SHA512/reset/122 894s ok 1791 /checksum/SHA512/reset/123 894s ok 1792 /checksum/SHA512/reset/124 894s ok 1793 /checksum/SHA512/reset/125 894s ok 1794 /checksum/SHA512/reset/126 894s ok 1795 /checksum/SHA512/reset/127 894s ok 1796 /checksum/SHA512/reset/128 894s ok 1797 /checksum/SHA512/reset/129 894s ok 1798 /checksum/SHA512/reset/130 894s ok 1799 /checksum/SHA512/reset/131 894s ok 1800 /checksum/SHA512/reset/132 894s ok 1801 /checksum/SHA512/reset/133 894s ok 1802 /checksum/SHA512/reset/134 894s ok 1803 /checksum/SHA512/reset/135 894s ok 1804 /checksum/SHA512/reset/136 894s ok 1805 /checksum/SHA512/reset/137 894s ok 1806 /checksum/SHA512/reset/138 894s ok 1807 /checksum/SHA512/reset/139 894s ok 1808 /checksum/SHA512/reset/140 894s ok 1809 /checksum/SHA512/reset/141 894s ok 1810 /checksum/SHA512/reset/142 894s ok 1811 /checksum/SHA512/reset/143 894s ok 1812 /checksum/SHA512/reset/144 894s ok 1813 /checksum/SHA512/reset/145 894s ok 1814 /checksum/SHA512/reset/146 894s ok 1815 /checksum/SHA512/reset/147 894s ok 1816 /checksum/SHA512/reset/148 894s ok 1817 /checksum/SHA512/reset/149 894s ok 1818 /checksum/SHA512/reset/150 894s ok 1819 /checksum/SHA512/reset/151 894s ok 1820 /checksum/SHA512/reset/152 894s ok 1821 /checksum/SHA512/reset/153 894s ok 1822 /checksum/SHA512/reset/154 894s ok 1823 /checksum/SHA512/reset/155 894s ok 1824 /checksum/SHA512/reset/156 894s ok 1825 /checksum/SHA512/reset/157 894s ok 1826 /checksum/SHA512/reset/158 894s ok 1827 /checksum/SHA512/reset/159 894s ok 1828 /checksum/SHA512/reset/160 894s ok 1829 /checksum/SHA512/reset/161 894s ok 1830 /checksum/SHA512/reset/162 894s ok 1831 /checksum/SHA512/reset/163 894s ok 1832 /checksum/SHA512/reset/164 894s ok 1833 /checksum/SHA512/reset/165 894s ok 1834 /checksum/SHA512/reset/166 894s ok 1835 /checksum/SHA512/reset/167 894s ok 1836 /checksum/SHA512/reset/168 894s ok 1837 /checksum/SHA512/reset/169 894s ok 1838 /checksum/SHA512/reset/170 894s ok 1839 /checksum/SHA512/reset/171 894s ok 1840 /checksum/SHA512/reset/172 894s ok 1841 /checksum/SHA512/reset/173 894s ok 1842 /checksum/SHA512/reset/174 894s ok 1843 /checksum/SHA512/reset/175 894s ok 1844 /checksum/SHA512/reset/176 894s ok 1845 /checksum/SHA512/reset/177 894s ok 1846 /checksum/SHA512/reset/178 894s ok 1847 /checksum/SHA512/reset/179 894s ok 1848 /checksum/SHA512/reset/180 894s ok 1849 /checksum/SHA512/reset/181 894s ok 1850 /checksum/SHA512/reset/182 894s ok 1851 /checksum/SHA512/reset/183 894s # End of reset tests 894s # End of SHA512 tests 894s # End of checksum tests 894s ok - glib/checksum.test 894s # Running test: glib/gdatetime.test 894s TAP version 14 894s # random seed: R02S9f5ec6a8a4db85affb138a2fffe125a1 894s 1..68 894s # Start of GDateTime tests 894s # Bug Reference: http://bugzilla.gnome.org/702674 894s ok 1 /GDateTime/invalid 894s ok 2 /GDateTime/add_days 894s ok 3 /GDateTime/add_full 894s ok 4 /GDateTime/add_hours 894s ok 5 /GDateTime/add_minutes 894s ok 6 /GDateTime/add_months 894s ok 7 /GDateTime/add_seconds 894s ok 8 /GDateTime/add_weeks 894s ok 9 /GDateTime/add_years 894s ok 10 /GDateTime/compare 894s ok 11 /GDateTime/diff 894s ok 12 /GDateTime/equal 894s ok 13 /GDateTime/get_day_of_week 894s ok 14 /GDateTime/get_day_of_month 894s ok 15 /GDateTime/get_day_of_year 894s ok 16 /GDateTime/get_hour 894s ok 17 /GDateTime/get_microsecond 894s ok 18 /GDateTime/get_minute 894s ok 19 /GDateTime/get_month 894s ok 20 /GDateTime/get_second 894s ok 21 /GDateTime/get_utc_offset 894s ok 22 /GDateTime/get_year 894s ok 23 /GDateTime/hash 894s ok 24 /GDateTime/new_from_unix 894s ok 25 /GDateTime/new_from_unix_utc 894s ok 26 /GDateTime/new_from_timeval 894s ok 27 /GDateTime/new_from_timeval_utc 894s ok 28 /GDateTime/new_from_iso8601 894s ok 29 /GDateTime/new_full 894s ok 30 /GDateTime/now 894s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2215 894s ok 31 /GDateTime/test-6-days-until-end-of-the-month 894s # %a -> expected: Sat 894s # %a -> actual: Sat 894s # %A -> expected: Saturday 894s # %A -> actual: Saturday 894s # %b -> expected: Oct 894s # %b -> actual: Oct 894s # %B -> expected: October 894s # %B -> actual: October 894s # %d -> expected: 24 894s # %d -> actual: 24 894s # %d -> expected: 01 894s # %d -> actual: 01 894s # %e -> expected: 24 894s # %e -> actual: 24 894s # %e -> expected:  1 894s # %e -> actual:  1 894s # %f -> expected: 001000 894s # %f -> actual: 001000 894s # %h -> expected: Oct 894s # %h -> actual: Oct 894s # %H -> expected: 00 894s # %H -> actual: 00 894s # %H -> expected: 15 894s # %H -> actual: 15 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %I -> expected: 03 894s # %I -> actual: 03 894s # %j -> expected: 297 894s # %j -> actual: 297 894s # %k -> expected:  0 894s # %k -> actual:  0 894s # %k -> expected: 13 894s # %k -> actual: 13 894s # %l -> expected: 12 894s # %l -> actual: 12 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %l -> expected:  1 894s # %l -> actual:  1 894s # %l -> expected: 10 894s # %l -> actual: 10 894s # %m -> expected: 10 894s # %m -> actual: 10 894s # %M -> expected: 00 894s # %M -> actual: 00 894s # %p -> expected: AM 894s # %p -> actual: AM 894s # %p -> expected: PM 894s # %p -> actual: PM 894s # %P -> expected: am 894s # %P -> actual: am 894s # %P -> expected: pm 894s # %P -> actual: pm 894s # %r -> expected: 12:00:00 AM 894s # %r -> actual: 12:00:00 AM 894s # %r -> expected: 01:13:13 PM 894s # %r -> actual: 01:13:13 PM 894s # %R -> expected: 00:00 894s # %R -> actual: 00:00 894s # %R -> expected: 13:13 894s # %R -> actual: 13:13 894s # %S -> expected: 00 894s # %S -> actual: 00 894s # %t -> expected: 894s # %t -> actual: 894s # %u -> expected: 6 894s # %u -> actual: 6 894s # %x -> expected: 10/24/09 894s # %x -> actual: 10/24/09 894s # %X -> expected: 00:00:00 894s # %X -> actual: 00:00:00 894s # %X -> expected: 13:14:15 894s # %X -> actual: 13:14:15 894s # %y -> expected: 09 894s # %y -> actual: 09 894s # %Y -> expected: 2009 894s # %Y -> actual: 2009 894s # %% -> expected: % 894s # %% -> actual: % 894s # % -> expected: 894s # % -> actual: 894s # %9 -> expected: (null) 894s # %9 -> actual: (null) 894s # %Z -> expected: UTC 894s # %Z -> actual: UTC 894s # %#Z %Z -> expected: utc UTC 894s # %#Z %Z -> actual: utc UTC 894s ok 32 /GDateTime/printf 894s # %a -> expected: 土 894s # %a -> actual: 土 894s # %A -> expected: 土曜日 894s # %A -> actual: 土曜日 894s # %b -> expected: 10月 894s # %b -> actual: 10月 894s # %B -> expected: 10月 894s # %B -> actual: 10月 894s # %c -> expected: 2009年10月24日 00時00分00秒 894s # %c -> actual: 2009年10月24日 00時00分00秒 894s # %C -> expected: 20 894s # %C -> actual: 20 894s # %d -> expected: 24 894s # %d -> actual: 24 894s # %d -> expected: 01 894s # %d -> actual: 01 894s # %e -> expected: 24 894s # %e -> actual: 24 894s # %h -> expected: 10月 894s # %h -> actual: 10月 894s # %H -> expected: 00 894s # %H -> actual: 00 894s # %H -> expected: 15 894s # %H -> actual: 15 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %I -> expected: 03 894s # %I -> actual: 03 894s # %j -> expected: 297 894s # %j -> actual: 297 894s # %k -> expected:  0 894s # %k -> actual:  0 894s # %k -> expected: 13 894s # %k -> actual: 13 894s # %l -> expected: 12 894s # %l -> actual: 12 894s # %I -> expected: 12 894s # %I -> actual: 12 894s # %l -> expected:  1 894s # %l -> actual:  1 894s # %l -> expected: 10 894s # %l -> actual: 10 894s # %m -> expected: 10 894s # %m -> actual: 10 894s # %M -> expected: 00 894s # %M -> actual: 00 894s # %p -> expected: 午前 894s # %p -> actual: 午前 894s # %p -> expected: 午後 894s # %p -> actual: 午後 894s # %P -> expected: 午前 894s # %P -> actual: 午前 894s # %P -> expected: 午後 894s # %P -> actual: 午後 894s # %r -> expected: 午前12時00分00秒 894s # %r -> actual: 午前12時00分00秒 894s # %r -> expected: 午後01時13分13秒 894s # %r -> actual: 午後01時13分13秒 894s # %R -> expected: 00:00 894s # %R -> actual: 00:00 894s # %R -> expected: 13:13 894s # %R -> actual: 13:13 894s # %S -> expected: 00 894s # %S -> actual: 00 894s # %t -> expected: 894s # %t -> actual: 894s # %u -> expected: 6 894s # %u -> actual: 6 894s # %x -> expected: 2009年10月24日 894s # %x -> actual: 2009年10月24日 894s # %X -> expected: 00時00分00秒 894s # %X -> actual: 00時00分00秒 894s # %X -> expected: 13時14分15秒 894s # %X -> actual: 13時14分15秒 894s # %y -> expected: 09 894s # %y -> actual: 09 894s # %Y -> expected: 2009 894s # %Y -> actual: 2009 894s # %% -> expected: % 894s # %% -> actual: % 894s # % -> expected: 894s # % -> actual: 894s # %9 -> expected: (null) 894s # %9 -> actual: (null) 894s # %Ec -> expected: 平成21年10月24日 00時00分00秒 894s # %Ec -> actual: 平成21年10月24日 00時00分00秒 894s # %EC -> expected: 平成 894s # %EC -> actual: 平成 894s # %Ex -> expected: 平成21年10月24日 894s # %Ex -> actual: 平成21年10月24日 894s # %EX -> expected: 00時00分00秒 894s # %EX -> actual: 00時00分00秒 894s # %Ey -> expected: 21 894s # %Ey -> actual: 21 894s # %EY -> expected: 平成21年 894s # %EY -> actual: 平成21年 894s ok 33 /GDateTime/non_utf8_printf 894s # ąśćł -> expected: ąśćł 894s # ąśćł -> actual: ąśćł 894s # %H∶%M -> expected: 23∶15 894s # %H∶%M -> actual: 23∶15 894s # %H∶%M -> expected: 23∶15 894s # %H∶%M -> actual: 23∶15 894s ok 34 /GDateTime/format_unrepresentable 894s ok 35 /GDateTime/format_iso8601 895s ok 36 /GDateTime/strftime 895s # %d -> expected: 01 895s # %d -> actual: 01 895s # %_d -> expected: 1 895s # %_d -> actual: 1 895s # %-d -> expected: 1 895s # %-d -> actual: 1 895s # %0d -> expected: 01 895s # %0d -> actual: 01 895s # %d -> expected: 21 895s # %d -> actual: 21 895s # %_d -> expected: 21 895s # %_d -> actual: 21 895s # %-d -> expected: 21 895s # %-d -> actual: 21 895s # %0d -> expected: 21 895s # %0d -> actual: 21 895s # %e -> expected:  1 895s # %e -> actual:  1 895s # %_e -> expected: 1 895s # %_e -> actual: 1 895s # %-e -> expected: 1 895s # %-e -> actual: 1 895s # %0e -> expected: 01 895s # %0e -> actual: 01 895s # %e -> expected: 21 895s # %e -> actual: 21 895s # %_e -> expected: 21 895s # %_e -> actual: 21 895s # %-e -> expected: 21 895s # %-e -> actual: 21 895s # %0e -> expected: 21 895s # %0e -> actual: 21 895s # %a -> expected: Thu 895s # %a -> actual: Thu 895s # %^a -> expected: THU 895s # %^a -> actual: THU 895s # %#a -> expected: THU 895s # %#a -> actual: THU 895s # %A -> expected: Thursday 895s # %A -> actual: Thursday 895s # %^A -> expected: THURSDAY 895s # %^A -> actual: THURSDAY 895s # %#A -> expected: THURSDAY 895s # %#A -> actual: THURSDAY 895s # %b -> expected: Jan 895s # %b -> actual: Jan 895s # %^b -> expected: JAN 895s # %^b -> actual: JAN 895s # %#b -> expected: JAN 895s # %#b -> actual: JAN 895s # %B -> expected: January 895s # %B -> actual: January 895s # %^B -> expected: JANUARY 895s # %^B -> actual: JANUARY 895s # %#B -> expected: JANUARY 895s # %#B -> actual: JANUARY 895s # %h -> expected: Jan 895s # %h -> actual: Jan 895s # %^h -> expected: JAN 895s # %^h -> actual: JAN 895s # %#h -> expected: JAN 895s # %#h -> actual: JAN 895s # %Z -> expected: UTC 895s # %Z -> actual: UTC 895s # %^Z -> expected: UTC 895s # %^Z -> actual: UTC 895s # %#Z -> expected: utc 895s # %#Z -> actual: utc 895s # %H -> expected: 01 895s # %H -> actual: 01 895s # %_H -> expected: 1 895s # %_H -> actual: 1 895s # %-H -> expected: 1 895s # %-H -> actual: 1 895s # %0H -> expected: 01 895s # %0H -> actual: 01 895s # %H -> expected: 21 895s # %H -> actual: 21 895s # %_H -> expected: 21 895s # %_H -> actual: 21 895s # %-H -> expected: 21 895s # %-H -> actual: 21 895s # %0H -> expected: 21 895s # %0H -> actual: 21 895s # %I -> expected: 01 895s # %I -> actual: 01 895s # %_I -> expected: 1 895s # %_I -> actual: 1 895s # %-I -> expected: 1 895s # %-I -> actual: 1 895s # %0I -> expected: 01 895s # %0I -> actual: 01 895s # %I -> expected: 11 895s # %I -> actual: 11 895s # %_I -> expected: 11 895s # %_I -> actual: 11 895s # %-I -> expected: 11 895s # %-I -> actual: 11 895s # %0I -> expected: 11 895s # %0I -> actual: 11 895s # %k -> expected:  1 895s # %k -> actual:  1 895s # %_k -> expected: 1 895s # %_k -> actual: 1 895s # %-k -> expected: 1 895s # %-k -> actual: 1 895s # %0k -> expected: 01 895s # %0k -> actual: 01 895s # %l -> expected:  1 895s # %l -> actual:  1 895s # %_l -> expected: 1 895s # %_l -> actual: 1 895s # %-l -> expected: 1 895s # %-l -> actual: 1 895s # %0l -> expected: 01 895s # %0l -> actual: 01 895s # %l -> expected: 11 895s # %l -> actual: 11 895s # %_l -> expected: 11 895s # %_l -> actual: 11 895s # %-l -> expected: 11 895s # %-l -> actual: 11 895s # %0l -> expected: 11 895s # %0l -> actual: 11 895s # %p -> expected: AM 895s # %p -> actual: AM 895s # %^p -> expected: AM 895s # %^p -> actual: AM 895s # %#p -> expected: am 895s # %#p -> actual: am 895s # %P -> expected: am 895s # %P -> actual: am 895s # %^P -> expected: AM 895s # %^P -> actual: AM 895s # %#P -> expected: am 895s # %#P -> actual: am 895s # %OH -> expected: ۲۳ 895s # %OH -> actual: ۲۳ 895s # %OI -> expected: ۱۱ 895s # %OI -> actual: ۱۱ 895s # %OM -> expected: ۰۰ 895s # %OM -> actual: ۰۰ 895s # %Om -> expected: ۰۷ 895s # %Om -> actual: ۰۷ 895s # %0Om -> expected: ۰۷ 895s # %0Om -> actual: ۰۷ 895s # %-Om -> expected: ۷ 895s # %-Om -> actual: ۷ 895s # %_Om -> expected: ۷ 895s # %_Om -> actual: ۷ 895s # %c -> expected: thu 01 jan 2009 00:00:00 utc 895s # %c -> actual: Thu 01 Jan 2009 00:00:00 UTC 895s # %Ec -> expected: thu 01 jan 2009 00:00:00 utc 895s # %Ec -> actual: Thu 01 Jan 2009 00:00:00 UTC 895s # %C -> expected: 20 895s # %C -> actual: 20 895s # %EC -> expected: 20 895s # %EC -> actual: 20 895s # %x -> expected: 02/01/09 895s # %x -> actual: 02/01/09 895s # %Ex -> expected: 02/01/09 895s # %Ex -> actual: 02/01/09 895s # %X -> expected: 01:02:03 895s # %X -> actual: 01:02:03 895s # %EX -> expected: 01:02:03 895s # %EX -> actual: 01:02:03 895s # %y -> expected: 09 895s # %y -> actual: 09 895s # %Ey -> expected: 09 895s # %Ey -> actual: 09 895s # %Y -> expected: 2009 895s # %Y -> actual: 2009 895s # %EY -> expected: 2009 895s # %EY -> actual: 2009 895s ok 37 /GDateTime/modifiers # SKIP locale gu_IN not available, skipping O modifier tests 895s # Bug Reference: http://bugzilla.gnome.org/749206 895s # %B -> expected: January 895s # %B -> actual: January 895s # %OB -> expected: February 895s # %OB -> actual: February 895s # %b -> expected: Mar 895s # %b -> actual: Mar 895s # %Ob -> expected: Apr 895s # %Ob -> actual: Apr 895s # %h -> expected: May 895s # %h -> actual: May 895s # %Oh -> expected: Jun 895s # %Oh -> actual: Jun 895s # %B -> expected: Juli 895s # %B -> actual: Juli 895s # %OB -> expected: August 895s # %OB -> actual: August 895s # %b -> expected: Sep 895s # %b -> actual: Sep 895s # %Ob -> expected: Okt 895s # %Ob -> actual: Okt 895s # %h -> expected: Nov 895s # %h -> actual: Nov 895s # %Oh -> expected: Dez 895s # %Oh -> actual: Dez 895s # %B -> expected: enero 895s # %B -> actual: enero 895s # %OB -> expected: febrero 895s # %OB -> actual: febrero 895s # %b -> expected: mar 895s # %b -> actual: mar 895s # %Ob -> expected: abr 895s # %Ob -> actual: abr 895s # %h -> expected: may 895s # %h -> actual: may 895s # %Oh -> expected: jun 895s # %Oh -> actual: jun 895s # %B -> expected: juillet 895s # %B -> actual: juillet 895s # %OB -> expected: août 895s # %OB -> actual: août 895s # %b -> expected: sept. 895s # %b -> actual: sept. 895s # %Ob -> expected: oct. 895s # %Ob -> actual: oct. 895s # %h -> expected: nov. 895s # %h -> actual: nov. 895s # %Oh -> expected: déc. 895s # %Oh -> actual: déc. 895s # %B -> expected: Ιανουαρίου 895s # %B -> actual: Ιανουαρίου 895s # %B -> expected: Φεβρουαρίου 895s # %B -> actual: Φεβρουαρίου 895s # %B -> expected: Μαρτίου 895s # %B -> actual: Μαρτίου 895s # %OB -> expected: Απρίλιος 895s # %OB -> actual: Απρίλιος 895s # %OB -> expected: Μάιος 895s # %OB -> actual: Μάιος 895s # %OB -> expected: Ιούνιος 895s # %OB -> actual: Ιούνιος 895s # %b -> expected: Ιουλ 895s # %b -> actual: Ιουλ 895s # %Ob -> expected: Αύγ 895s # %Ob -> actual: Αύγ 895s # %B -> expected: svibnja 895s # %B -> actual: svibnja 895s # %B -> expected: lipnja 895s # %B -> actual: lipnja 895s # %B -> expected: srpnja 895s # %B -> actual: srpnja 895s # %OB -> expected: Kolovoz 895s # %OB -> actual: kolovoz 895s # %OB -> expected: Rujan 895s # %OB -> actual: rujan 895s # %OB -> expected: Listopad 895s # %OB -> actual: listopad 895s # %b -> expected: Stu 895s # %b -> actual: stu 895s # %Ob -> expected: Pro 895s # %Ob -> actual: pro 895s # %B -> expected: sausio 895s # %B -> actual: sausio 895s # %B -> expected: vasario 895s # %B -> actual: vasario 895s # %B -> expected: kovo 895s # %B -> actual: kovo 895s # %OB -> expected: balandis 895s # %OB -> actual: balandis 895s # %OB -> expected: gegužė 895s # %OB -> actual: gegužė 895s # %OB -> expected: birželis 895s # %OB -> actual: birželis 895s # %b -> expected: liep. 895s # %b -> actual: liep. 895s # %Ob -> expected: rugp. 895s # %Ob -> actual: rugp. 895s # %B -> expected: maja 895s # %B -> actual: maja 895s # %B -> expected: czerwca 895s # %B -> actual: czerwca 895s # %B -> expected: lipca 895s # %B -> actual: lipca 895s # %OB -> expected: sierpień 895s # %OB -> actual: sierpień 895s # %OB -> expected: wrzesień 895s # %OB -> actual: wrzesień 895s # %OB -> expected: październik 895s # %OB -> actual: październik 895s # %b -> expected: lis 895s # %b -> actual: lis 895s # %Ob -> expected: gru 895s # %Ob -> actual: gru 895s # %B -> expected: января 895s # %B -> actual: января 895s # %B -> expected: февраля 895s # %B -> actual: февраля 895s # %B -> expected: марта 895s # %B -> actual: марта 895s # %OB -> expected: Апрель 895s # %OB -> actual: Апрель 895s # %OB -> expected: Май 895s # %OB -> actual: Май 895s # %OB -> expected: Июнь 895s # %OB -> actual: Июнь 895s # %b -> expected: июл 895s # %b -> actual: июл 895s # %Ob -> expected: авг 895s # %Ob -> actual: авг 895s # %b -> expected: мая 895s # %b -> actual: мая 895s # %Ob -> expected: май 895s # %Ob -> actual: май 895s ok 38 /GDateTime/month_names 895s ok 39 /GDateTime/to_local 895s ok 40 /GDateTime/to_unix 895s ok 41 /GDateTime/to_timeval 895s ok 42 /GDateTime/to_utc 895s ok 43 /GDateTime/now_utc 895s ok 44 /GDateTime/dst 895s # Bug Reference: http://bugzilla.gnome.org/642935 895s ok 45 /GDateTime/test_z 896s ok 46 /GDateTime/test-all-dates 896s # slow test /GDateTime/test-all-dates executed in 1.31 secs 896s ok 47 /GDateTime/unix_usec 896s # Start of new_from_unix tests 896s # Bug Reference: http://bugzilla.gnome.org/782089 896s ok 48 /GDateTime/new_from_unix/overflow 896s # End of new_from_unix tests 896s # Start of new_from_timeval tests 896s # Bug Reference: http://bugzilla.gnome.org/782089 896s # Maximum supported GTimeVal.tv_sec = 253402300799 896s ok 49 /GDateTime/new_from_timeval/overflow 896s # End of new_from_timeval tests 896s # Start of new_from_iso8601 tests 896s # /GDateTime/new_from_iso8601/2 summary: Further parser tests for g_date_time_new_from_iso8601(), checking success and failure using test vectors. 896s # Vector 0: 1990-11-01T10:21:17Z 896s # Vector 1: 19901101T102117Z 896s # Vector 2: 1970-01-01T00:00:17.12Z 896s # Vector 3: 1970-01-01T00:00:17.1234Z 896s # Vector 4: 1970-01-01T00:00:17.123456Z 896s # Vector 5: 1980-02-22T12:36:00+02:00 896s # Vector 6: 1990-12-31T15:59:60-08:00 896s # Vector 7: 896s # Vector 8: x 896s # Vector 9: 123x 896s # Vector 10: 2001-10+x 896s # Vector 11: 1980-02-22T 896s # Vector 12: 2001-10-08Tx 896s # Vector 13: 2001-10-08T10:11x 896s # Vector 14: Wed Dec 19 17:20:20 GMT 2007 896s # Vector 15: 1980-02-22T10:36:00Zulu 896s # Vector 16: 2T0+819855292164632335 896s # Vector 17: 2018-08-03T14:08:05.446178377+01:00 896s # Vector 18: 2147483648-08-03T14:08:05.446178377+01:00 896s # Vector 19: 2018-13-03T14:08:05.446178377+01:00 896s # Vector 20: 2018-00-03T14:08:05.446178377+01:00 896s # Vector 21: 2018-08-00T14:08:05.446178377+01:00 896s # Vector 22: 2018-08-32T14:08:05.446178377+01:00 896s # Vector 23: 2018-08-03T24:08:05.446178377+01:00 896s # Vector 24: 2018-08-03T14:60:05.446178377+01:00 896s # Vector 25: 2018-08-03T14:08:63.446178377+01:00 896s # Vector 26: 2018-08-03T14:08:05.446178377+100:00 896s # Vector 27: 20180803T140805.446178377+0100 896s # Vector 28: 21474836480803T140805.446178377+0100 896s # Vector 29: 20181303T140805.446178377+0100 896s # Vector 30: 20180003T140805.446178377+0100 896s # Vector 31: 20180800T140805.446178377+0100 896s # Vector 32: 20180832T140805.446178377+0100 896s # Vector 33: 20180803T240805.446178377+0100 896s # Vector 34: 20180803T146005.446178377+0100 896s # Vector 35: 20180803T140863.446178377+0100 896s # Vector 36: 20180803T140805.446178377+10000 896s # Vector 37: -0005-01-01T00:00:00Z 896s # Vector 38: 2018-08-06 896s # Vector 39: 20180803T140805,446178377+0100 896s # Vector 40: 2018-08-03T14:08:05.446178377-01:00 896s # Vector 41: 2018-08-03T14:08:05.446178377 01:00 896s # Vector 42: 1990-11-01T10:21:17 896s # Vector 43: 1719W462 407777-07 896s # Vector 44: 4011090 260528Z 896s # Vector 45: 0000W011 228214-22 896s ok 50 /GDateTime/new_from_iso8601/2 896s # End of new_from_iso8601 tests 896s # Start of format_mixed tests 896s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 896s # %b -> expected: mar 896s # %b -> actual: Mar 896s # %B -> expected: march 896s # %B -> actual: March 896s ok 51 /GDateTime/format_mixed/utf8_time_non_utf8_messages 896s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 896s # %b -> expected: mar 896s # %b -> actual: Mar 896s # %B -> expected: march 896s # %B -> actual: March 896s ok 52 /GDateTime/format_mixed/utf8_time_utf8_messages 896s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 896s # %b -> expected: Mär 896s # %b -> actual: Mär 896s # %B -> expected: März 896s # %B -> actual: März 896s ok 53 /GDateTime/format_mixed/non_utf8_time_non_utf8_messages 896s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 896s # %b -> expected: Mär 896s # %b -> actual: Mär 896s # %B -> expected: März 896s # %B -> actual: März 896s ok 54 /GDateTime/format_mixed/non_utf8_time_utf8_messages 896s # End of format_mixed tests 896s # Start of strftime tests 896s # %r -> expected: (null) 896s # %r -> actual: (null) 896s ok 55 /GDateTime/strftime/error_handling 896s # End of strftime tests 896s # Start of eras tests 896s # %Ec -> expected: 令和05年06月01日 00時00分00秒 896s # %Ec -> actual: 令和05年06月01日 00時00分00秒 896s # %EC -> expected: 令和 896s # %EC -> actual: 令和 896s # %Ex -> expected: 令和05年06月01日 896s # %Ex -> actual: 令和05年06月01日 896s # %EX -> expected: 00時00分00秒 896s # %EX -> actual: 00時00分00秒 896s # %Ey -> expected: 05 896s # %Ey -> actual: 05 896s # %EY -> expected: 令和05年 896s # %EY -> actual: 令和05年 896s # %Ec -> expected: 平成31年04月30日 00時00分00秒 896s # %Ec -> actual: 平成31年04月30日 00時00分00秒 896s # %EC -> expected: 平成 896s # %EC -> actual: 平成 896s # %Ex -> expected: 平成31年04月30日 896s # %Ex -> actual: 平成31年04月30日 896s # %EX -> expected: 00時00分00秒 896s # %EX -> actual: 00時00分00秒 896s # %Ey -> expected: 31 896s # %Ey -> actual: 31 896s # %EY -> expected: 平成31年 896s # %EY -> actual: 平成31年 896s # %Ec -> expected: 昭和元年12月25日 00時00分00秒 896s # %Ec -> actual: 昭和元年12月25日 00時00分00秒 896s # %EC -> expected: 昭和 896s # %EC -> actual: 昭和 896s # %Ex -> expected: 昭和元年12月25日 896s # %Ex -> actual: 昭和元年12月25日 896s # %EX -> expected: 00時00分00秒 896s # %EX -> actual: 00時00分00秒 896s # %Ey -> expected: 01 896s # %Ey -> actual: 01 896s # %EY -> expected: 昭和元年 896s # %EY -> actual: 昭和元年 896s ok 56 /GDateTime/eras/japan 896s ok 57 /GDateTime/eras/thailand # SKIP locale th_TH.utf-8 not available, skipping Thai era tests 896s # Vector 0: 896s # Vector 1: +:1:-543/01/01:+*:พ.ศ.:%EC %Ey 896s # Vector 2: +:2:2020/01/01:+*:令和:%EC%Ey年;+:1:2019/05/01:2019/12/31:令和:%EC元年;+:2:1990/01/01:2019/04/30:平成:%EC%Ey年;+:1:1989/01/08:1989/12/31:平成:%EC元年;+:2:1927/01/01:1989/01/07:昭和:%EC%Ey年;+:1:1926/12/25:1926/12/31:昭和:%EC元年;+:2:1913/01/01:1926/12/24:大正:%EC%Ey年;+:1:1912/07/30:1912/12/31:大正:%EC元年;+:6:1873/01/01:1912/07/29:明治:%EC%Ey年;+:1:0001/01/01:1872/12/31:西暦:%EC%Ey年;+:1:-0001/12/31:-*:紀元前:%EC%Ey年 896s # Vector 3: -:2:2020/01/01:-*:令和:%EC%Ey年 896s # Vector 4: +:2:2020/01/01:2020/01/01:令和:%EC%Ey年 896s # Vector 5: +:2:+2020/01/01:+*:令和:%EC%Ey年 896s # Vector 6: .:2:2020/01/01:+*:令和:%EC%Ey年 896s # Vector 7: +.2:2020/01/01:+*:令和:%EC%Ey年 896s # Vector 8: + 896s # Vector 9: +: 896s # Vector 10: +:: 896s # Vector 11: +:200 896s # Vector 12: +:2nonsense 896s # Vector 13: +:2nonsense: 896s ok - glib/gdatetime.test 896s # Running test: glib/gdbus-peer-object-manager.test 896s ok - glib/gdbus-peer-object-manager.test 896s # Running test: glib/memory-settings-backend.test 896s ok - glib/memory-settings-backend.test 896s # Running test: glib/sleepy-stream.test 896s ok - glib/sleepy-stream.test 896s # Running test: glib/cxx-2b.test 896s ok - glib/cxx-2b.test 896s # Running test: glib/testing-nonfatal.test 896s ok - glib/testing-nonfatal.test 896s # Running test: glib/utils-isolated.test 896s ok - glib/utils-isolated.test 896s # Running test: glib/gdbus-sasl.test 896s # Vector 14: +:2: 896s # Vector 15: +:2:: 896s # Vector 16: +:2:2020-01/01:+*:令和:%EC%Ey年 896s # Vector 17: +:2:2020nonsense/01/01:+*:令和:%EC%Ey年 896s # Vector 18: +:2:2020:+*:令和:%EC%Ey年 896s # Vector 19: +:2:18446744073709551615/01/01:+*:令和:%EC%Ey年 896s # Vector 20: +:2:2020/01-01:+*:令和:%EC%Ey年 896s # Vector 21: +:2:2020/01nonsense/01:+*:令和:%EC%Ey年 896s # Vector 22: +:2:2020/01:+*:令和:%EC%Ey年 896s # Vector 23: +:2:2020/00/01:+*:令和:%EC%Ey年 896s # Vector 24: +:2:2020/13/01:+*:令和:%EC%Ey年 896s # Vector 25: +:2:2020/01/00:+*:令和:%EC%Ey年 896s # Vector 26: +:2:2020/01/32:+*:令和:%EC%Ey年 896s # Vector 27: +:2:2020/01/01nonsense:+*:令和:%EC%Ey年 896s # Vector 28: +:2:2020/01/01 896s # Vector 29: +:2:2020/01/01: 896s # Vector 30: +:2:2020/01/01:: 896s # Vector 31: +:2:2020/01/01:2021-01-01:令和:%EC%Ey年 896s # Vector 32: +:2:2020/01/01:+* 896s # Vector 33: +:2:2020/01/01:+*: 896s # Vector 34: +:2:2020/01/01:+*:: 896s # Vector 35: +:2:2020/01/01:+*:令和 896s # Vector 36: +:2:2020/01/01:+*:令和: 896s # Vector 37: +:2:2020/01/01:+*:令和:; 896s ok 58 /GDateTime/eras/parsing 896s # End of eras tests 896s # End of GDateTime tests 896s # Start of GTimeZone tests 896s ok 59 /GTimeZone/find-interval 896s ok 60 /GTimeZone/adjust-time 896s ok 61 /GTimeZone/no-header 896s ok 62 /GTimeZone/no-header-identifier 896s ok 63 /GTimeZone/posix-parse 896s # Bug Reference: http://bugzilla.gnome.org/697715 896s ok 64 /GTimeZone/floating-point 896s # System time zone identifier: Etc/UTC 896s ok 65 /GTimeZone/identifier 896s # Vector 0: -158400 896s # Vector 1: -10000 896s # Vector 2: -3600 896s # Vector 3: -61 896s # Vector 4: -60 896s # Vector 5: -59 896s # Vector 6: 0 896s # Vector 7: 59 896s # Vector 8: 60 896s # Vector 9: 61 896s # Vector 10: 3600 896s # Vector 11: 10000 896s # Vector 12: 158400 896s ok 66 /GTimeZone/new-offset 896s # /GTimeZone/parse-rfc8536 summary: Test parsing time zone files in RFC 8536 version 3 format 896s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2129 896s ok 67 /GTimeZone/parse-rfc8536 896s # /GTimeZone/caching summary: GTimeZone instances are cached 896s ok 68 /GTimeZone/caching 896s # End of GTimeZone tests 896s TAP version 14 896s # random seed: R02S268f69c90f290b5dbb161041ebe15b6b 896s 1..2 896s # Start of gdbus tests 896s # Start of peer-object-manager tests 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/system-config1:/tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/system-data1:/tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/normal/.dirs/runtime 896s ok 1 /gdbus/peer-object-manager/normal 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/system-config1:/tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/system-data1:/tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer-object-manager_OFPOK3/gdbus/peer-object-manager/root/.dirs/runtime 896s ok 2 /gdbus/peer-object-manager/root 896s # End of peer-object-manager tests 896s # End of gdbus tests 896s TAP version 14 896s # random seed: R02S2cf4e3485970b2fe4e90a44c3a822e9d 896s 1..1 896s # Start of memory-settings-backend tests 896s ok 1 /memory-settings-backend/extension-point-registered 896s # End of memory-settings-backend tests 896s TAP version 14 896s # random seed: R02S290e4528d7d3474e68129ba9c3940a18 896s 1..2 896s # Start of filter-stream tests 896s ok 1 /filter-stream/input 896s ok 2 /filter-stream/async 896s # End of filter-stream tests 896s TAP version 14 896s # random seed: R02S961a69edae9076abd8b57879be4b3bce 896s 1..2 896s # Start of gtask tests 896s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 896s ok 1 /gtask/name 896s # Start of name tests 896s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 896s ok 2 /gtask/name/macro-wrapper 896s # End of name tests 896s # End of gtask tests 896s TAP version 14 896s # random seed: R02S112b4717643a829a982c3c7530c2d0fa 896s ** 896s GLib:ERROR:../../../glib/tests/testing-nonfatal.c:26:main: assertion failed ("We can survive this!" == "Or maybe not?"): ("We can survive this!" == "Or maybe not?") 896s # GLib:ERROR:../../../glib/tests/testing-nonfatal.c:26:main: assertion failed ("We can survive this!" == "Or maybe not?"): ("We can survive this!" == "Or maybe not?") 896s TAP version 14 896s # random seed: R02Scd1cba91add771fde37d62ac43ced03d 896s 1..11 896s # Start of utils-isolated tests 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/tmp-dir/.dirs/runtime 896s ok 1 /utils-isolated/tmp-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/home-dir/.dirs/runtime 896s ok 2 /utils-isolated/home-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-cache-dir/.dirs/runtime 896s ok 3 /utils-isolated/user-cache-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-config-dirs/.dirs/runtime 896s ok 4 /utils-isolated/system-config-dirs 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-config-dir/.dirs/runtime 896s ok 5 /utils-isolated/user-config-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/system-data-dirs/.dirs/runtime 896s ok 6 /utils-isolated/system-data-dirs 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-data-dir/.dirs/runtime 896s ok 7 /utils-isolated/user-data-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-state-dir/.dirs/runtime 896s ok 8 /utils-isolated/user-state-dir 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/user-runtime-dir/.dirs/runtime 896s ok 9 /utils-isolated/user-runtime-dir 896s # Start of cleanup tests 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/runtime 896s Unable to clean up temporary directory /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs/runtime: Directory not empty 896s Unable to clean up temporary directory /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors/.dirs: Directory not empty 896s Unable to clean up temporary directory /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/handles-errors: Directory not empty 896s ok 10 /utils-isolated/cleanup/handles-errors 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-config1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-data1:/tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/runtime 896s Unable to clean up temporary directory /tmp/test_utils-isolated_2EUPK3/utils-isolated/cleanup/doesnt-follow-symlinks: No such file or directory 896s ok 11 /utils-isolated/cleanup/doesnt-follow-symlinks 896s # End of cleanup tests 896s # End of utils-isolated tests 896s TAP version 14 896s # random seed: R02Sd1fb47fcc34ae94b73ef8eaf21e1325c 896s 1..1 896s # Start of gdbus tests 896s # Start of sasl tests 896s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/home 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/cache 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/system-config1:/tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/system-config2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/config 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/system-data1:/tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/system-data2 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/data 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/state 896s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-sasl_8FGPK3/gdbus/sasl/server/.dirs/runtime 896s # New handshake: EXTERNAL with incorrect initial response 896s # C:“AUTH EXTERNAL 30” 896s # Expect: /^REJECTED.*$/ 896s # S:“REJECTED EXTERNAL DBUS_COOKIE_SHA1” 896s # New handshake: EXTERNAL without initial response, failing to authenticate 896s # C:“AUTH EXTERNAL” 896s # Expect: /^DATA$/ 896s # S:“DATA” 896s # C:“DATA 30” 896s # Expect: /^REJECTED.*$/ 896s # S:“REJECTED EXTERNAL DBUS_COOKIE_SHA1” 896s # New handshake: EXTERNAL with initial response 896s # C:“AUTH EXTERNAL 31303030” 896s # Expect: /^OK [0-9a-f]+$/ 896s # S:“OK f2e8681529f00342e3a51e6169826e2a” 896s # New handshake: EXTERNAL without initial response 896s # C:“AUTH EXTERNAL” 896s # Expect: /^DATA$/ 896s # S:“DATA” 896s # C:“DATA 31303030” 896s # Expect: /^OK [0-9a-f]+$/ 896s # S:“OK f2e8681529f00342e3a51e6169826e2a” 896s # New handshake: EXTERNAL with empty authorization identity 896s # C:“AUTH EXTERNAL” 896s # Expect: /^DATA$/ 896s # S:“DATA” 896s # C:“DATA” 896s # Expect: /^OK [0-9a-f]+$/ 896s # S:“OK f2e8681529f00342e3a51e6169826e2a” 896s # New handshake: EXTERNAL with empty authorization identity and whitespace 896s # C:“AUTH EXTERNAL” 896s # Expect: /^DATA$/ 896s # S:“DATA” 896s # C:“DATA ” 896s # Expect: /^OK [0-9a-f]+$/ 896s # S:“OK f2e8681529f00342e3a51e6169826e2a” 896s ok 1 /gdbus/sasl/server 896s # End of sasl tests 896s # End of gdbus tests 896s ok - glib/gdbus-sasl.test 896s # Running test: glib/gthash.test 896s ok - glib/gthash.test 896s # Running test: glib/mkenums.py.test 896s TAP version 14 896s # random seed: R02S8b5f7b8562ce31533e1d0cb474b879d4 896s 1..1 896s # Start of gthash tests 896s ok 1 /gthash/build-retrieve 896s # End of gthash tests 896s TAP version 13 896s ok 1 __main__.TestMkenums.test_available_in 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmpnrwhsx1b 896s # rspfile: False 896s # /tmp/tmpnrwhsx1b/tmpbrf_r09r.h: 896s # typedef enum { 896s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2) 896s # } GDBusServerFlags; 896s # 896s # /tmp/tmpnrwhsx1b/tmpbg4huq40.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpnrwhsx1b/tmpbg4huq40.template', '/tmp/tmpnrwhsx1b/tmpbrf_r09r.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmpnrwhsx1b/tmpbrf_r09r.h 896s # basename: tmpbrf_r09r.h 896s # enumeration-production 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-header 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-production 896s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 896s # valuenick: user 896s # valuenum: 4 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-tail 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 2 __main__.TestMkenums.test_comma_in_enum_value 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmplaa78ci4 896s # rspfile: False 896s # /tmp/tmplaa78ci4/tmpj88plb4c.h: 896s # typedef enum { 896s # ENUM_VALUE_WITH_COMMA = ',', 896s # } TestCommaEnum; 896s # 896s # /tmp/tmplaa78ci4/tmpk42lw1c0.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmplaa78ci4/tmpk42lw1c0.template', '/tmp/tmplaa78ci4/tmpj88plb4c.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmplaa78ci4/tmpj88plb4c.h 896s # basename: tmpj88plb4c.h 896s # enumeration-production 896s # EnumName: TestCommaEnum 896s # enum_name: test_comma_enum 896s # ENUMNAME: TEST_COMMA_ENUM 896s # ENUMSHORT: COMMA_ENUM 896s # ENUMPREFIX: TEST 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-header 896s # EnumName: TestCommaEnum 896s # enum_name: test_comma_enum 896s # ENUMNAME: TEST_COMMA_ENUM 896s # ENUMSHORT: COMMA_ENUM 896s # ENUMPREFIX: TEST 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-production 896s # VALUENAME: ENUM_VALUE_WITH_COMMA 896s # valuenick: comma 896s # valuenum: 44 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-tail 896s # EnumName: TestCommaEnum 896s # enum_name: test_comma_enum 896s # ENUMNAME: TEST_COMMA_ENUM 896s # ENUMSHORT: COMMA_ENUM 896s # ENUMPREFIX: TEST 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 3 __main__.TestMkenums.test_deprecated_in 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmpi0qaj8_p 896s # rspfile: False 896s # /tmp/tmpi0qaj8_p/tmppwf3mfp7.h: 896s # typedef enum { 896s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2) 896s # } GDBusServerFlags; 896s # 896s # /tmp/tmpi0qaj8_p/tmpkybe89ff.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpi0qaj8_p/tmpkybe89ff.template', '/tmp/tmpi0qaj8_p/tmppwf3mfp7.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmpi0qaj8_p/tmppwf3mfp7.h 896s # basename: tmppwf3mfp7.h 896s # enumeration-production 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-header 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-production 896s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 896s # valuenick: user 896s # valuenum: 4 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-tail 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 4 __main__.TestMkenums.test_deprecated_in_for 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmp25ugpnl0 896s # rspfile: False 896s # /tmp/tmp25ugpnl0/tmpn1hj9rkw.h: 896s # typedef enum { 896s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR(G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER2) = (1<<2) 896s # } GDBusServerFlags; 896s # 896s # /tmp/tmp25ugpnl0/tmp71iwvw68.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp25ugpnl0/tmp71iwvw68.template', '/tmp/tmp25ugpnl0/tmpn1hj9rkw.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmp25ugpnl0/tmpn1hj9rkw.h 896s # basename: tmpn1hj9rkw.h 896s # enumeration-production 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-header 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-production 896s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 896s # valuenick: user 896s # valuenum: 4 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # value-tail 896s # EnumName: GDBusServerFlags 896s # enum_name: g_dbus_server_flags 896s # ENUMNAME: G_DBUS_SERVER_FLAGS 896s # ENUMSHORT: DBUS_SERVER_FLAGS 896s # ENUMPREFIX: G 896s # enumsince: 896s # type: flags 896s # Type: Flags 896s # TYPE: FLAGS 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 5 __main__.TestMkenums.test_empty_header 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmpjv7rfy_6 896s # rspfile: False 896s # /tmp/tmpjv7rfy_6/tmpza8pw8os.h: 896s # /tmp/tmpjv7rfy_6/tmpesdftr15.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpjv7rfy_6/tmpesdftr15.template', '/tmp/tmpjv7rfy_6/tmpza8pw8os.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 6 __main__.TestMkenums.test_empty_template 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmp_6v5o2jw 896s # rspfile: False 896s # /tmp/tmp_6v5o2jw/tmp6cpgvi_0.template: 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp_6v5o2jw/tmp6cpgvi_0.template'] 896s # Return code: 0 896s # Output: 896s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 896s # 896s # 896s # /* Generated data ends here */ 896s # Error: 896s ok 7 __main__.TestMkenums.test_enum_name 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmpyye_mh7y 896s # rspfile: False 896s # /tmp/tmpyye_mh7y/tmpc6h2ants.h: 896s # typedef enum _SomeEnumIdentifier { 896s # ENUM_VALUE 896s # } SomeEnumIdentifier; 896s # 896s # /tmp/tmpyye_mh7y/tmp7go2bsm7.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpyye_mh7y/tmp7go2bsm7.template', '/tmp/tmpyye_mh7y/tmpc6h2ants.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmpyye_mh7y/tmpc6h2ants.h 896s # basename: tmpc6h2ants.h 896s # enumeration-production 896s # EnumName: SomeEnumIdentifier 896s # enum_name: some_enum_identifier 896s # ENUMNAME: SOME_ENUM_IDENTIFIER 896s # ENUMSHORT: ENUM_IDENTIFIER 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-header 896s # EnumName: SomeEnumIdentifier 896s # enum_name: some_enum_identifier 896s # ENUMNAME: SOME_ENUM_IDENTIFIER 896s # ENUMSHORT: ENUM_IDENTIFIER 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-production 896s # VALUENAME: ENUM_VALUE 896s # valuenick: value 896s # valuenum: 0 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-tail 896s # EnumName: SomeEnumIdentifier 896s # enum_name: some_enum_identifier 896s # ENUMNAME: SOME_ENUM_IDENTIFIER 896s # ENUMSHORT: ENUM_IDENTIFIER 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s ok 8 __main__.TestMkenums.test_enum_private_public 896s # glib-mkenums: /usr/bin/glib-mkenums 896s # tmpdir: /tmp/tmpe2k0v8nn 896s # rspfile: False 896s # /tmp/tmpe2k0v8nn/tmp1arwy4dl.h: 896s # typedef enum { 896s # ENUM_VALUE_PUBLIC1, 896s # /*< private >*/ 896s # ENUM_VALUE_PRIVATE, 896s # } SomeEnumA 896s # 896s # /tmp/tmpe2k0v8nn/tmpgt0bz6la.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpe2k0v8nn/tmpgt0bz6la.template', '/tmp/tmpe2k0v8nn/tmp1arwy4dl.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmpe2k0v8nn/tmp1arwy4dl.h 896s # basename: tmp1arwy4dl.h 896s # enumeration-production 896s # EnumName: SomeEnumA 896s # enum_name: some_enum_a 896s # ENUMNAME: SOME_ENUM_A 896s # ENUMSHORT: ENUM_A 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-header 896s # EnumName: SomeEnumA 896s # enum_name: some_enum_a 896s # ENUMNAME: SOME_ENUM_A 896s # ENUMSHORT: ENUM_A 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-production 896s # VALUENAME: ENUM_VALUE_PUBLIC1 896s # valuenick: public1 896s # valuenum: 0 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-tail 896s # EnumName: SomeEnumA 896s # enum_name: some_enum_a 896s # ENUMNAME: SOME_ENUM_A 896s # ENUMSHORT: ENUM_A 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 896s # 896s # /tmp/tmpe2k0v8nn/tmp_w44l5qb.h: 896s # typedef enum { 896s # /*< private >*/ 896s # ENUM_VALUE_PRIVATE, 896s # /*< public >*/ 896s # ENUM_VALUE_PUBLIC2, 896s # } SomeEnumB; 896s # 896s # /tmp/tmpe2k0v8nn/tmpoy90iojs.template: 896s # /*** BEGIN file-header ***/ 896s # file-header 896s # /*** END file-header ***/ 896s # 896s # /*** BEGIN file-production ***/ 896s # file-production 896s # filename: @filename@ 896s # basename: @basename@ 896s # /*** END file-production ***/ 896s # 896s # /*** BEGIN enumeration-production ***/ 896s # enumeration-production 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END enumeration-production ***/ 896s # 896s # /*** BEGIN value-header ***/ 896s # value-header 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-header ***/ 896s # 896s # /*** BEGIN value-production ***/ 896s # value-production 896s # VALUENAME: @VALUENAME@ 896s # valuenick: @valuenick@ 896s # valuenum: @valuenum@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-production ***/ 896s # 896s # /*** BEGIN value-tail ***/ 896s # value-tail 896s # EnumName: @EnumName@ 896s # enum_name: @enum_name@ 896s # ENUMNAME: @ENUMNAME@ 896s # ENUMSHORT: @ENUMSHORT@ 896s # ENUMPREFIX: @ENUMPREFIX@ 896s # enumsince: @enumsince@ 896s # type: @type@ 896s # Type: @Type@ 896s # TYPE: @TYPE@ 896s # /*** END value-tail ***/ 896s # 896s # /*** BEGIN comment ***/ 896s # comment 896s # comment: @comment@ 896s # /*** END comment ***/ 896s # 896s # /*** BEGIN file-tail ***/ 896s # file-tail 896s # /*** END file-tail ***/ 896s # 896s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpe2k0v8nn/tmpoy90iojs.template', '/tmp/tmpe2k0v8nn/tmp_w44l5qb.h'] 896s # Return code: 0 896s # Output: 896s # comment 896s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 896s # 896s # 896s # file-header 896s # file-production 896s # filename: /tmp/tmpe2k0v8nn/tmp_w44l5qb.h 896s # basename: tmp_w44l5qb.h 896s # enumeration-production 896s # EnumName: SomeEnumB 896s # enum_name: some_enum_b 896s # ENUMNAME: SOME_ENUM_B 896s # ENUMSHORT: ENUM_B 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-header 896s # EnumName: SomeEnumB 896s # enum_name: some_enum_b 896s # ENUMNAME: SOME_ENUM_B 896s # ENUMSHORT: ENUM_B 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-production 896s # VALUENAME: ENUM_VALUE_PUBLIC2 896s # valuenick: public2 896s # valuenum: 1 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # value-tail 896s # EnumName: SomeEnumB 896s # enum_name: some_enum_b 896s # ENUMNAME: SOME_ENUM_B 896s # ENUMSHORT: ENUM_B 896s # ENUMPREFIX: SOME 896s # enumsince: 896s # type: enum 896s # Type: Enum 896s # TYPE: ENUM 896s # file-tail 896s # 896s # comment 896s # comment: Generated data ends here 896s # Error: 897s ok 9 __main__.TestMkenums.test_enum_symbolic_expression 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpy2cu7sn5 897s # rspfile: False 897s # /tmp/tmpy2cu7sn5/tmplvzs6a39.h: 897s # typedef enum { 897s # /*< private >*/ 897s # ENUM_VALUE_PRIVATE = 5, 897s # /*< public >*/ 897s # ENUM_VALUE_PUBLIC = ENUM_VALUE_PRIVATE + 2, 897s # } TestSymbolicEnum; 897s # 897s # /tmp/tmpy2cu7sn5/tmpv08pw71s.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpy2cu7sn5/tmpv08pw71s.template', '/tmp/tmpy2cu7sn5/tmplvzs6a39.h'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpy2cu7sn5/tmplvzs6a39.h 897s # basename: tmplvzs6a39.h 897s # enumeration-production 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE_PUBLIC 897s # valuenick: public 897s # valuenum: 7 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 10 __main__.TestMkenums.test_filename_basename_in_fhead_ftail 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpb66up256 897s # rspfile: False 897s # /tmp/tmpb66up256/tmpavodltz2.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-tail ***/ 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpb66up256/tmpavodltz2.template'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # filename: @filename@ 897s # basename: @basename@ 897s # file-tail 897s # filename: @filename@ 897s # basename: @basename@ 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s # WARNING: @filename@ used in file-header section. 897s # WARNING: @basename@ used in file-header section. 897s # WARNING: @filename@ used in file-tail section. 897s # WARNING: @basename@ used in file-tail section. 897s ok 11 __main__.TestMkenums.test_help 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmppliz1h3h 897s # rspfile: False 897s # Running: ['/usr/bin/glib-mkenums', '--help'] 897s # Return code: 0 897s # Output: 897s # usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX] 897s # [--symbol-prefix SYMPREFIX] [--fhead FHEAD] 897s # [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD] 897s # [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL] 897s # [--comments COMMENT_TMPL] [--template TEMPLATE] 897s # [--output OUTPUT] [--version] 897s # [args ...] 897s # 897s # positional arguments: 897s # args One or more input files, or a single argument 897s # @rspfile_path pointing to a file that contains the 897s # actual arguments 897s # 897s # options: 897s # -h, --help show this help message and exit 897s # --identifier-prefix IDPREFIX 897s # Identifier prefix 897s # --symbol-prefix SYMPREFIX 897s # Symbol prefix 897s # --fhead FHEAD Output file header 897s # --ftail FTAIL Output file footer 897s # --fprod FPROD Put out TEXT every time a new input file is being 897s # processed. 897s # --eprod EPROD Per enum text, produced prior to value iterations 897s # --vhead VHEAD Value header, produced before iterating over enum 897s # values 897s # --vprod VPROD Value text, produced for each enum value. 897s # --vtail VTAIL Value tail, produced after iterating over enum values 897s # --comments COMMENT_TMPL 897s # Comment structure 897s # --template TEMPLATE Template file 897s # --output OUTPUT 897s # --version, -v Print version information 897s # 897s # Production text substitutions: 897s # @EnumName@ PrefixTheXEnum 897s # @enum_name@ prefix_the_xenum 897s # @ENUMNAME@ PREFIX_THE_XENUM 897s # @ENUMSHORT@ THE_XENUM 897s # @ENUMPREFIX@ PREFIX 897s # @enumsince@ the user-provided since value given 897s # @VALUENAME@ PREFIX_THE_XVALUE 897s # @valuenick@ the-xvalue 897s # @valuenum@ the integer value (limited support, Since: 2.26) 897s # @type@ either enum or flags 897s # @Type@ either Enum or Flags 897s # @TYPE@ either ENUM or FLAGS 897s # @filename@ name of current input file 897s # @basename@ base name of the current input file (Since: 2.22) 897s # Error: 897s ok 12 __main__.TestMkenums.test_no_args 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp_69377t0 897s # rspfile: False 897s # Running: ['/usr/bin/glib-mkenums'] 897s # Return code: 0 897s # Output: 897s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 897s # 897s # 897s # /* Generated data ends here */ 897s # Error: 897s ok 13 __main__.TestMkenums.test_no_headers 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpj97x_dkq 897s # rspfile: False 897s # /tmp/tmpj97x_dkq/tmpwrjttkjb.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpj97x_dkq/tmpwrjttkjb.template'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 14 __main__.TestMkenums.test_no_nick 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmppfshbze9 897s # rspfile: False 897s # /tmp/tmppfshbze9/tmp7q7tuk_f.h: 897s # typedef enum { 897s # GEGL_SAMPLER_NEAREST = 0, /*< desc="nearest" >*/ 897s # } GeglSamplerType; 897s # 897s # /tmp/tmppfshbze9/tmpf1ggvlng.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmppfshbze9/tmpf1ggvlng.template', '/tmp/tmppfshbze9/tmp7q7tuk_f.h'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmppfshbze9/tmp7q7tuk_f.h 897s # basename: tmp7q7tuk_f.h 897s # enumeration-production 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: GEGL_SAMPLER_NEAREST 897s # valuenick: nearest 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 15 __main__.TestMkenums.test_non_utf8_encoding 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmptleixrh6 897s # rspfile: False 897s # /tmp/tmptleixrh6/tmp314uqvtz.h: 897s # /* Copyright © La Peña */ 897s # typedef enum { 897s # ENUM_VALUE 897s # } SomeEnumIdentifier; 897s # 897s # /tmp/tmptleixrh6/tmpcklcsft5.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmptleixrh6/tmpcklcsft5.template', '/tmp/tmptleixrh6/tmp314uqvtz.h'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmptleixrh6/tmp314uqvtz.h 897s # basename: tmp314uqvtz.h 897s # enumeration-production 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE 897s # valuenick: value 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s # WARNING: UnicodeWarning: invalid start byte at 22 (b'yright \xa9 La Pe\xf1') 897s # WARNING: UnicodeWarning: invalid continuation byte at 29 (b'\xa9 La Pe\xf1a */\n ') 897s ok 16 __main__.TestMkenums.test_reproducible 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp85mxziga 897s # rspfile: False 897s # /tmp/tmp85mxziga/tmpdc7ei6bv.template: template 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp85mxziga/tmpdc7ei6bv.template', '/tmp/tmp85mxziga/tmpzhe2api01.h', '/tmp/tmp85mxziga/tmp6jvn_et02.h'] 897s # Return code: 0 897s # Output: 897s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 897s # 897s # 897s # /* Generated data ends here */ 897s # Error: 897s # 897s # /tmp/tmp85mxziga/tmpo2oa41qt.template: template 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp85mxziga/tmpo2oa41qt.template', '/tmp/tmp85mxziga/tmp6jvn_et02.h', '/tmp/tmp85mxziga/tmpzhe2api01.h'] 897s # Return code: 0 897s # Output: 897s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 897s # 897s # 897s # /* Generated data ends here */ 897s # Error: 897s ok 17 __main__.TestMkenums.test_since 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp3we8nt5t 897s # rspfile: False 897s # /tmp/tmp3we8nt5t/tmp2cpb08jd.h: 897s # typedef enum { /*< since=1.0 >*/ 897s # QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0, 897s # } QmiWmsMessageProtocol; 897s # 897s # /tmp/tmp3we8nt5t/tmpny1rrc68.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp3we8nt5t/tmpny1rrc68.template', '/tmp/tmp3we8nt5t/tmp2cpb08jd.h'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp3we8nt5t/tmp2cpb08jd.h 897s # basename: tmp2cpb08jd.h 897s # enumeration-production 897s # EnumName: QmiWmsMessageProtocol 897s # enum_name: qmi_wms_message_protocol 897s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 897s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 897s # ENUMPREFIX: QMI 897s # enumsince: 1.0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: QmiWmsMessageProtocol 897s # enum_name: qmi_wms_message_protocol 897s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 897s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 897s # ENUMPREFIX: QMI 897s # enumsince: 1.0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA 897s # valuenick: cdma 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: QmiWmsMessageProtocol 897s # enum_name: qmi_wms_message_protocol 897s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 897s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 897s # ENUMPREFIX: QMI 897s # enumsince: 1.0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 18 __main__.TestMkenums.test_with_double_quotes 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp4cmj2qux 897s # rspfile: False 897s # /tmp/tmp4cmj2qux/tmpzn2w7xfe.h: 897s # typedef enum { 897s # FOO_VALUE /*< nick="eek, a comma" >*/ 897s # } Foo; 897s # 897s # /tmp/tmp4cmj2qux/tmp7j2ti5lt.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp4cmj2qux/tmp7j2ti5lt.template', '/tmp/tmp4cmj2qux/tmpzn2w7xfe.h'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp4cmj2qux/tmpzn2w7xfe.h 897s # basename: tmpzn2w7xfe.h 897s # enumeration-production 897s # EnumName: Foo 897s # enum_name: foo_ 897s # ENUMNAME: FOO_ 897s # ENUMSHORT: 897s # ENUMPREFIX: FOO 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: Foo 897s # enum_name: foo_ 897s # ENUMNAME: FOO_ 897s # ENUMSHORT: 897s # ENUMPREFIX: FOO 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: FOO_VALUE 897s # valuenick: eek, a comma 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: Foo 897s # enum_name: foo_ 897s # ENUMNAME: FOO_ 897s # ENUMSHORT: 897s # ENUMPREFIX: FOO 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 19 __main__.TestRspMkenums.test_available_in 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpja2uyj01 897s # rspfile: True 897s # /tmp/tmpja2uyj01/tmpo17zwn8x.h: 897s # typedef enum { 897s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2) 897s # } GDBusServerFlags; 897s # 897s # /tmp/tmpja2uyj01/tmpkwe8dp1j.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpja2uyj01/tmpkwe8dp1j.template /tmp/tmpja2uyj01/tmpo17zwn8x.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpja2uyj01/tmp9owqtbmv'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpja2uyj01/tmpo17zwn8x.h 897s # basename: tmpo17zwn8x.h 897s # enumeration-production 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-header 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-production 897s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 897s # valuenick: user 897s # valuenum: 4 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-tail 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 20 __main__.TestRspMkenums.test_comma_in_enum_value 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp1vb_dwva 897s # rspfile: True 897s # /tmp/tmp1vb_dwva/tmpexwri7ei.h: 897s # typedef enum { 897s # ENUM_VALUE_WITH_COMMA = ',', 897s # } TestCommaEnum; 897s # 897s # /tmp/tmp1vb_dwva/tmp6315ib70.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmp1vb_dwva/tmp6315ib70.template /tmp/tmp1vb_dwva/tmpexwri7ei.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp1vb_dwva/tmpbp7pfvd1'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp1vb_dwva/tmpexwri7ei.h 897s # basename: tmpexwri7ei.h 897s # enumeration-production 897s # EnumName: TestCommaEnum 897s # enum_name: test_comma_enum 897s # ENUMNAME: TEST_COMMA_ENUM 897s # ENUMSHORT: COMMA_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: TestCommaEnum 897s # enum_name: test_comma_enum 897s # ENUMNAME: TEST_COMMA_ENUM 897s # ENUMSHORT: COMMA_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE_WITH_COMMA 897s # valuenick: comma 897s # valuenum: 44 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: TestCommaEnum 897s # enum_name: test_comma_enum 897s # ENUMNAME: TEST_COMMA_ENUM 897s # ENUMSHORT: COMMA_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 21 __main__.TestRspMkenums.test_deprecated_in 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpfotouwpc 897s # rspfile: True 897s # /tmp/tmpfotouwpc/tmpi55c5on2.h: 897s # typedef enum { 897s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2) 897s # } GDBusServerFlags; 897s # 897s # /tmp/tmpfotouwpc/tmpy_rrdd9i.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpfotouwpc/tmpy_rrdd9i.template /tmp/tmpfotouwpc/tmpi55c5on2.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpfotouwpc/tmpd324ku_w'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpfotouwpc/tmpi55c5on2.h 897s # basename: tmpi55c5on2.h 897s # enumeration-production 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-header 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-production 897s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 897s # valuenick: user 897s # valuenum: 4 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-tail 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 22 __main__.TestRspMkenums.test_deprecated_in_for 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmptap5oati 897s # rspfile: True 897s # /tmp/tmptap5oati/tmpaacnv_ow.h: 897s # typedef enum { 897s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR(G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER2) = (1<<2) 897s # } GDBusServerFlags; 897s # 897s # /tmp/tmptap5oati/tmppub1ox99.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmptap5oati/tmppub1ox99.template /tmp/tmptap5oati/tmpaacnv_ow.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmptap5oati/tmp1jeh3dyh'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmptap5oati/tmpaacnv_ow.h 897s # basename: tmpaacnv_ow.h 897s # enumeration-production 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-header 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-production 897s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 897s # valuenick: user 897s # valuenum: 4 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # value-tail 897s # EnumName: GDBusServerFlags 897s # enum_name: g_dbus_server_flags 897s # ENUMNAME: G_DBUS_SERVER_FLAGS 897s # ENUMSHORT: DBUS_SERVER_FLAGS 897s # ENUMPREFIX: G 897s # enumsince: 897s # type: flags 897s # Type: Flags 897s # TYPE: FLAGS 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 23 __main__.TestRspMkenums.test_empty_header 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpyzztu6j5 897s # rspfile: True 897s # /tmp/tmpyzztu6j5/tmp8gauthgg.h: 897s # /tmp/tmpyzztu6j5/tmp6w203jya.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpyzztu6j5/tmp6w203jya.template /tmp/tmpyzztu6j5/tmp8gauthgg.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpyzztu6j5/tmp8ge53p5z'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 24 __main__.TestRspMkenums.test_empty_template 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp3juxtn21 897s # rspfile: True 897s # /tmp/tmp3juxtn21/tmp5mzb65xv.template: 897s # Response file contains: --template /tmp/tmp3juxtn21/tmp5mzb65xv.template 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3juxtn21/tmpaw03d466'] 897s # Return code: 0 897s # Output: 897s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 897s # 897s # 897s # /* Generated data ends here */ 897s # Error: 897s ok 25 __main__.TestRspMkenums.test_enum_name 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpj2vjcfd7 897s # rspfile: True 897s # /tmp/tmpj2vjcfd7/tmprd76obl9.h: 897s # typedef enum _SomeEnumIdentifier { 897s # ENUM_VALUE 897s # } SomeEnumIdentifier; 897s # 897s # /tmp/tmpj2vjcfd7/tmpaov_1_k4.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpj2vjcfd7/tmpaov_1_k4.template /tmp/tmpj2vjcfd7/tmprd76obl9.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpj2vjcfd7/tmphrxkw22y'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpj2vjcfd7/tmprd76obl9.h 897s # basename: tmprd76obl9.h 897s # enumeration-production 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE 897s # valuenick: value 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 26 __main__.TestRspMkenums.test_enum_private_public 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp3myhjcys 897s # rspfile: True 897s # /tmp/tmp3myhjcys/tmpizmu6znp.h: 897s # typedef enum { 897s # ENUM_VALUE_PUBLIC1, 897s # /*< private >*/ 897s # ENUM_VALUE_PRIVATE, 897s # } SomeEnumA 897s # 897s # /tmp/tmp3myhjcys/tmpr70561ef.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmp3myhjcys/tmpr70561ef.template /tmp/tmp3myhjcys/tmpizmu6znp.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3myhjcys/tmp_vfiprv3'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp3myhjcys/tmpizmu6znp.h 897s # basename: tmpizmu6znp.h 897s # enumeration-production 897s # EnumName: SomeEnumA 897s # enum_name: some_enum_a 897s # ENUMNAME: SOME_ENUM_A 897s # ENUMSHORT: ENUM_A 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: SomeEnumA 897s # enum_name: some_enum_a 897s # ENUMNAME: SOME_ENUM_A 897s # ENUMSHORT: ENUM_A 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE_PUBLIC1 897s # valuenick: public1 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: SomeEnumA 897s # enum_name: some_enum_a 897s # ENUMNAME: SOME_ENUM_A 897s # ENUMSHORT: ENUM_A 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s # 897s # /tmp/tmp3myhjcys/tmpcjt9il9q.h: 897s # typedef enum { 897s # /*< private >*/ 897s # ENUM_VALUE_PRIVATE, 897s # /*< public >*/ 897s # ENUM_VALUE_PUBLIC2, 897s # } SomeEnumB; 897s # 897s # /tmp/tmp3myhjcys/tmpc1ek57ao.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmp3myhjcys/tmpc1ek57ao.template /tmp/tmp3myhjcys/tmpcjt9il9q.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3myhjcys/tmp123m7f9x'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp3myhjcys/tmpcjt9il9q.h 897s # basename: tmpcjt9il9q.h 897s # enumeration-production 897s # EnumName: SomeEnumB 897s # enum_name: some_enum_b 897s # ENUMNAME: SOME_ENUM_B 897s # ENUMSHORT: ENUM_B 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: SomeEnumB 897s # enum_name: some_enum_b 897s # ENUMNAME: SOME_ENUM_B 897s # ENUMSHORT: ENUM_B 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE_PUBLIC2 897s # valuenick: public2 897s # valuenum: 1 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: SomeEnumB 897s # enum_name: some_enum_b 897s # ENUMNAME: SOME_ENUM_B 897s # ENUMSHORT: ENUM_B 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 27 __main__.TestRspMkenums.test_enum_symbolic_expression 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpat964cc1 897s # rspfile: True 897s # /tmp/tmpat964cc1/tmp4ahd_3xf.h: 897s # typedef enum { 897s # /*< private >*/ 897s # ENUM_VALUE_PRIVATE = 5, 897s # /*< public >*/ 897s # ENUM_VALUE_PUBLIC = ENUM_VALUE_PRIVATE + 2, 897s # } TestSymbolicEnum; 897s # 897s # /tmp/tmpat964cc1/tmpzv1rwjvp.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpat964cc1/tmpzv1rwjvp.template /tmp/tmpat964cc1/tmp4ahd_3xf.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpat964cc1/tmpiavnr53c'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpat964cc1/tmp4ahd_3xf.h 897s # basename: tmp4ahd_3xf.h 897s # enumeration-production 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE_PUBLIC 897s # valuenick: public 897s # valuenum: 7 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: TestSymbolicEnum 897s # enum_name: test_symbolic_enum 897s # ENUMNAME: TEST_SYMBOLIC_ENUM 897s # ENUMSHORT: SYMBOLIC_ENUM 897s # ENUMPREFIX: TEST 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 28 __main__.TestRspMkenums.test_filename_basename_in_fhead_ftail 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmps2du4qvi 897s # rspfile: True 897s # /tmp/tmps2du4qvi/tmpwkybzqya.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-tail ***/ 897s # Response file contains: --template /tmp/tmps2du4qvi/tmpwkybzqya.template 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmps2du4qvi/tmpxzig_rxs'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # filename: @filename@ 897s # basename: @basename@ 897s # file-tail 897s # filename: @filename@ 897s # basename: @basename@ 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s # WARNING: @filename@ used in file-header section. 897s # WARNING: @basename@ used in file-header section. 897s # WARNING: @filename@ used in file-tail section. 897s # WARNING: @basename@ used in file-tail section. 897s ok 29 __main__.TestRspMkenums.test_help 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpogggcxbx 897s # rspfile: True 897s # Response file contains: --help 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpogggcxbx/tmpy18wh85p'] 897s # Return code: 0 897s # Output: 897s # usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX] 897s # [--symbol-prefix SYMPREFIX] [--fhead FHEAD] 897s # [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD] 897s # [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL] 897s # [--comments COMMENT_TMPL] [--template TEMPLATE] 897s # [--output OUTPUT] [--version] 897s # [args ...] 897s # 897s # positional arguments: 897s # args One or more input files, or a single argument 897s # @rspfile_path pointing to a file that contains the 897s # actual arguments 897s # 897s # options: 897s # -h, --help show this help message and exit 897s # --identifier-prefix IDPREFIX 897s # Identifier prefix 897s # --symbol-prefix SYMPREFIX 897s # Symbol prefix 897s # --fhead FHEAD Output file header 897s # --ftail FTAIL Output file footer 897s # --fprod FPROD Put out TEXT every time a new input file is being 897s # processed. 897s # --eprod EPROD Per enum text, produced prior to value iterations 897s # --vhead VHEAD Value header, produced before iterating over enum 897s # values 897s # --vprod VPROD Value text, produced for each enum value. 897s # --vtail VTAIL Value tail, produced after iterating over enum values 897s # --comments COMMENT_TMPL 897s # Comment structure 897s # --template TEMPLATE Template file 897s # --output OUTPUT 897s # --version, -v Print version information 897s # 897s # Production text substitutions: 897s # @EnumName@ PrefixTheXEnum 897s # @enum_name@ prefix_the_xenum 897s # @ENUMNAME@ PREFIX_THE_XENUM 897s # @ENUMSHORT@ THE_XENUM 897s # @ENUMPREFIX@ PREFIX 897s # @enumsince@ the user-provided since value given 897s # @VALUENAME@ PREFIX_THE_XVALUE 897s # @valuenick@ the-xvalue 897s # @valuenum@ the integer value (limited support, Since: 2.26) 897s # @type@ either enum or flags 897s # @Type@ either Enum or Flags 897s # @TYPE@ either ENUM or FLAGS 897s # @filename@ name of current input file 897s # @basename@ base name of the current input file (Since: 2.22) 897s # Error: 897s ok 30 __main__.TestRspMkenums.test_no_args 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpa5mp4ptv 897s # rspfile: True 897s # Response file contains: 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpa5mp4ptv/tmp9xxvspbw'] 897s # Return code: 0 897s # Output: 897s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 897s # 897s # 897s # /* Generated data ends here */ 897s # Error: 897s ok 31 __main__.TestRspMkenums.test_no_headers 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpbkst8mk9 897s # rspfile: True 897s # /tmp/tmpbkst8mk9/tmpcw8u732o.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpbkst8mk9/tmpcw8u732o.template 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpbkst8mk9/tmpr8_0don7'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 32 __main__.TestRspMkenums.test_no_nick 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmpbdp5jin2 897s # rspfile: True 897s # /tmp/tmpbdp5jin2/tmpnv_x1vzm.h: 897s # typedef enum { 897s # GEGL_SAMPLER_NEAREST = 0, /*< desc="nearest" >*/ 897s # } GeglSamplerType; 897s # 897s # /tmp/tmpbdp5jin2/tmpqbwx0rj6.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmpbdp5jin2/tmpqbwx0rj6.template /tmp/tmpbdp5jin2/tmpnv_x1vzm.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpbdp5jin2/tmpftmgs7un'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmpbdp5jin2/tmpnv_x1vzm.h 897s # basename: tmpnv_x1vzm.h 897s # enumeration-production 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: GEGL_SAMPLER_NEAREST 897s # valuenick: nearest 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: GeglSamplerType 897s # enum_name: gegl_sampler_type 897s # ENUMNAME: GEGL_SAMPLER_TYPE 897s # ENUMSHORT: SAMPLER_TYPE 897s # ENUMPREFIX: GEGL 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s ok 33 __main__.TestRspMkenums.test_non_utf8_encoding 897s # glib-mkenums: /usr/bin/glib-mkenums 897s # tmpdir: /tmp/tmp5in_otg9 897s # rspfile: True 897s # /tmp/tmp5in_otg9/tmpksxfkzqv.h: 897s # /* Copyright © La Peña */ 897s # typedef enum { 897s # ENUM_VALUE 897s # } SomeEnumIdentifier; 897s # 897s # /tmp/tmp5in_otg9/tmp4f36unpq.template: 897s # /*** BEGIN file-header ***/ 897s # file-header 897s # /*** END file-header ***/ 897s # 897s # /*** BEGIN file-production ***/ 897s # file-production 897s # filename: @filename@ 897s # basename: @basename@ 897s # /*** END file-production ***/ 897s # 897s # /*** BEGIN enumeration-production ***/ 897s # enumeration-production 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END enumeration-production ***/ 897s # 897s # /*** BEGIN value-header ***/ 897s # value-header 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-header ***/ 897s # 897s # /*** BEGIN value-production ***/ 897s # value-production 897s # VALUENAME: @VALUENAME@ 897s # valuenick: @valuenick@ 897s # valuenum: @valuenum@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-production ***/ 897s # 897s # /*** BEGIN value-tail ***/ 897s # value-tail 897s # EnumName: @EnumName@ 897s # enum_name: @enum_name@ 897s # ENUMNAME: @ENUMNAME@ 897s # ENUMSHORT: @ENUMSHORT@ 897s # ENUMPREFIX: @ENUMPREFIX@ 897s # enumsince: @enumsince@ 897s # type: @type@ 897s # Type: @Type@ 897s # TYPE: @TYPE@ 897s # /*** END value-tail ***/ 897s # 897s # /*** BEGIN comment ***/ 897s # comment 897s # comment: @comment@ 897s # /*** END comment ***/ 897s # 897s # /*** BEGIN file-tail ***/ 897s # file-tail 897s # /*** END file-tail ***/ 897s # 897s # Response file contains: --template /tmp/tmp5in_otg9/tmp4f36unpq.template /tmp/tmp5in_otg9/tmpksxfkzqv.h 897s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp5in_otg9/tmp89jhpm0v'] 897s # Return code: 0 897s # Output: 897s # comment 897s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 897s # 897s # 897s # file-header 897s # file-production 897s # filename: /tmp/tmp5in_otg9/tmpksxfkzqv.h 897s # basename: tmpksxfkzqv.h 897s # enumeration-production 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-header 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-production 897s # VALUENAME: ENUM_VALUE 897s # valuenick: value 897s # valuenum: 0 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # value-tail 897s # EnumName: SomeEnumIdentifier 897s # enum_name: some_enum_identifier 897s # ENUMNAME: SOME_ENUM_IDENTIFIER 897s # ENUMSHORT: ENUM_IDENTIFIER 897s # ENUMPREFIX: SOME 897s # enumsince: 897s # type: enum 897s # Type: Enum 897s # TYPE: ENUM 897s # file-tail 897s # 897s # comment 897s # comment: Generated data ends here 897s # Error: 897s # WARNING: UnicodeWarning: invalid start byte at 22 (b'yright \xa9 La Pe\xf1') 897s # WARNING: UnicodeWarning: invalid continuation byte at 29 (b'\xa9 La Pe\xf1a */\n ') 898s ok 34 __main__.TestRspMkenums.test_reproducible 898s # glib-mkenums: /usr/bin/glib-mkenums 898s # tmpdir: /tmp/tmpacxht7vk 898s # rspfile: True 898s # /tmp/tmpacxht7vk/tmp5a8oq14h.template: template 898s # Response file contains: --template /tmp/tmpacxht7vk/tmp5a8oq14h.template /tmp/tmpacxht7vk/tmpk4f8j3gi1.h /tmp/tmpacxht7vk/tmpuzm1y0n02.h 898s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpacxht7vk/tmppyus9v9x'] 898s # Return code: 0 898s # Output: 898s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 898s # 898s # 898s # /* Generated data ends here */ 898s # Error: 898s # 898s # /tmp/tmpacxht7vk/tmpx6w6g3jc.template: template 898s # Response file contains: --template /tmp/tmpacxht7vk/tmpx6w6g3jc.template /tmp/tmpacxht7vk/tmpuzm1y0n02.h /tmp/tmpacxht7vk/tmpk4f8j3gi1.h 898s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpacxht7vk/tmpjmyd75_j'] 898s # Return code: 0 898s # Output: 898s # /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ 898s # 898s # 898s # /* Generated data ends here */ 898s # Error: 898s ok 35 __main__.TestRspMkenums.test_since 898s # glib-mkenums: /usr/bin/glib-mkenums 898s # tmpdir: /tmp/tmp4dm9bn65 898s # rspfile: True 898s # /tmp/tmp4dm9bn65/tmpqf5edmrd.h: 898s # typedef enum { /*< since=1.0 >*/ 898s # QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0, 898s # } QmiWmsMessageProtocol; 898s # 898s # /tmp/tmp4dm9bn65/tmpuzd3nonn.template: 898s # /*** BEGIN file-header ***/ 898s # file-header 898s # /*** END file-header ***/ 898s # 898s # /*** BEGIN file-production ***/ 898s # file-production 898s # filename: @filename@ 898s # basename: @basename@ 898s # /*** END file-production ***/ 898s # 898s # /*** BEGIN enumeration-production ***/ 898s # enumeration-production 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END enumeration-production ***/ 898s # 898s # /*** BEGIN value-header ***/ 898s # value-header 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-header ***/ 898s # 898s # /*** BEGIN value-production ***/ 898s # value-production 898s # VALUENAME: @VALUENAME@ 898s # valuenick: @valuenick@ 898s # valuenum: @valuenum@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-production ***/ 898s # 898s # /*** BEGIN value-tail ***/ 898s # value-tail 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-tail ***/ 898s # 898s # /*** BEGIN comment ***/ 898s # comment 898s # comment: @comment@ 898s # /*** END comment ***/ 898s # 898s # /*** BEGIN file-tail ***/ 898s # file-tail 898s # /*** END file-tail ***/ 898s # 898s # Response file contains: --template /tmp/tmp4dm9bn65/tmpuzd3nonn.template /tmp/tmp4dm9bn65/tmpqf5edmrd.h 898s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp4dm9bn65/tmpsgqmj1s4'] 898s # Return code: 0 898s # Output: 898s # comment 898s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 898s # 898s # 898s # file-header 898s # file-production 898s # filename: /tmp/tmp4dm9bn65/tmpqf5edmrd.h 898s # basename: tmpqf5edmrd.h 898s # enumeration-production 898s # EnumName: QmiWmsMessageProtocol 898s # enum_name: qmi_wms_message_protocol 898s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 898s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 898s # ENUMPREFIX: QMI 898s # enumsince: 1.0 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-header 898s # EnumName: QmiWmsMessageProtocol 898s # enum_name: qmi_wms_message_protocol 898s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 898s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 898s # ENUMPREFIX: QMI 898s # enumsince: 1.0 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-production 898s # VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA 898s # valuenick: cdma 898s # valuenum: 0 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-tail 898s # EnumName: QmiWmsMessageProtocol 898s # enum_name: qmi_wms_message_protocol 898s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 898s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 898s # ENUMPREFIX: QMI 898s # enumsince: 1.0 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # file-tail 898s # 898s # comment 898s # comment: Generated data ends here 898s # Error: 898s ok 36 __main__.TestRspMkenums.test_with_double_quotes 898s # glib-mkenums: /usr/bin/glib-mkenums 898s # tmpdir: /tmp/tmps4wyiq_0 898s # rspfile: True 898s # /tmp/tmps4wyiq_0/tmpud1qyb5s.h: 898s # typedef enum { 898s # FOO_VALUE /*< nick="eek, a comma" >*/ 898s # } Foo; 898s # 898s # /tmp/tmps4wyiq_0/tmpp3h8p8zh.template: 898s # /*** BEGIN file-header ***/ 898s # file-header 898s # /*** END file-header ***/ 898s # 898s # /*** BEGIN file-production ***/ 898s # file-production 898s # filename: @filename@ 898s # basename: @basename@ 898s # /*** END file-production ***/ 898s # 898s # /*** BEGIN enumeration-production ***/ 898s # enumeration-production 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END enumeration-production ***/ 898s # 898s # /*** BEGIN value-header ***/ 898s # value-header 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-header ***/ 898s # 898s # /*** BEGIN value-production ***/ 898s # value-production 898s # VALUENAME: @VALUENAME@ 898s # valuenick: @valuenick@ 898s # valuenum: @valuenum@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-production ***/ 898s # 898s # /*** BEGIN value-tail ***/ 898s # value-tail 898s # EnumName: @EnumName@ 898s # enum_name: @enum_name@ 898s # ENUMNAME: @ENUMNAME@ 898s # ENUMSHORT: @ENUMSHORT@ 898s # ENUMPREFIX: @ENUMPREFIX@ 898s # enumsince: @enumsince@ 898s # type: @type@ 898s # Type: @Type@ 898s # TYPE: @TYPE@ 898s # /*** END value-tail ***/ 898s # 898s # /*** BEGIN comment ***/ 898s # comment 898s # comment: @comment@ 898s # /*** END comment ***/ 898s # 898s # /*** BEGIN file-tail ***/ 898s # file-tail 898s # /*** END file-tail ***/ 898s # 898s # Response file contains: --template /tmp/tmps4wyiq_0/tmpp3h8p8zh.template /tmp/tmps4wyiq_0/tmpud1qyb5s.h 898s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmps4wyiq_0/tmpfltdbtlq'] 898s # Return code: 0 898s # Output: 898s # comment 898s # comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. 898s # 898s # 898s # file-header 898s # file-production 898s # filename: /tmp/tmps4wyiq_0/tmpud1qyb5s.h 898s # basename: tmpud1qyb5s.h 898s # enumeration-production 898s # EnumName: Foo 898s # enum_name: foo_ 898s # ENUMNAME: FOO_ 898s # ENUMSHORT: 898s # ENUMPREFIX: FOO 898s # enumsince: 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-header 898s # EnumName: Foo 898s # enum_name: foo_ 898s # ENUMNAME: FOO_ 898s # ENUMSHORT: 898s # ENUMPREFIX: FOO 898s # enumsince: 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-production 898s # VALUENAME: FOO_VALUE 898s # valuenick: eek, a comma 898s # valuenum: 0 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # value-tail 898s # EnumName: Foo 898s # enum_name: foo_ 898s # ENUMNAME: FOO_ 898s # ENUMSHORT: 898s # ENUMPREFIX: FOO 898s # enumsince: 898s # type: enum 898s # Type: Enum 898s # TYPE: ENUM 898s # file-tail 898s # 898s # comment 898s # comment: Generated data ends here 898s # Error: 898s 1..36 898s ok - glib/mkenums.py.test 898s # Running test: glib/atomic-c-89.test 898s TAP version 14 898s # random seed: R02S3d180b703b5df4765fc4029ad8251c76 898s 1..2 898s # Start of atomic tests 898s ok 1 /atomic/types 898s ok - glib/atomic-c-89.test 898s ok 2 /atomic/threaded 898s # End of atomic tests 898s # Running test: glib/gnotification.test 898s TAP version 14 898s # random seed: R02Scd652808985d50e2acb9206a96ba2e60 898s 1..2 898s # Start of gnotification tests 898s ok 1 /gnotification/basic 898s ok 2 /gnotification/properties 898s # End of gnotification tests 898s ok - glib/gnotification.test 898s TAP version 14 898s # random seed: R02Se804b99054bf49811a1bc553e176d374 898s 1..6 898s # Start of icons tests 898s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 898s ok 1 /icons/to-string 898s # Running test: glib/g-icon.test 898s ok - glib/g-icon.test 898s ok 2 /icons/serialize 898s ok 3 /icons/themed 898s ok 4 /icons/emblemed 898s ok 5 /icons/file 898s ok 6 /icons/bytes 898s # End of icons tests 898s # Running test: glib/markup-subparser.test 898s ok - glib/markup-subparser.test 898s # Running test: glib/charset.test 898s ok - glib/charset.test 898s # Running test: glib/macros.test 898s TAP version 14 898s # random seed: R02S17184e0ec4b7a5bb1a5e6337bc7888a2 898s 1..14 898s # Start of glib tests 898s # Start of markup tests 898s # Start of subparser tests 898s # Start of success tests 898s ok 1 /glib/markup/subparser/success/0 898s ok 2 /glib/markup/subparser/success/1 898s ok 3 /glib/markup/subparser/success/2 898s ok 4 /glib/markup/subparser/success/3 898s ok 5 /glib/markup/subparser/success/4 898s ok 6 /glib/markup/subparser/success/5 898s ok 7 /glib/markup/subparser/success/6 898s # End of success tests 898s # Start of failure tests 898s ok 8 /glib/markup/subparser/failure/0 898s ok 9 /glib/markup/subparser/failure/1 898s ok 10 /glib/markup/subparser/failure/2 898s ok 11 /glib/markup/subparser/failure/3 898s ok 12 /glib/markup/subparser/failure/4 898s ok 13 /glib/markup/subparser/failure/5 898s ok 14 /glib/markup/subparser/failure/6 898s # End of failure tests 898s # End of subparser tests 898s # End of markup tests 898s # End of glib tests 898s TAP version 14 898s # random seed: R02Sd86e4b0bcbb0f0bf14b68b99bcfa7ebe 898s 1..2 898s # Start of charset tests 898s # Test 0 898s # Test 1 898s # Test 2 898s # Test 3 898s ok 1 /charset/language_names_with_category 898s ok 2 /charset/language_names_with_category_async 898s # End of charset tests 898s TAP version 14 898s # random seed: R02S457454cf9607ced87883301be8100587 898s 1..3 898s # Start of alignof tests 898s ok 1 /alignof/fallback 898s # End of alignof tests 898s # Start of assert tests 898s ok 2 /assert/static 898s # End of assert tests 898s # Start of struct tests 898s ok 3 /struct/sizeof_member 898s # End of struct tests 898s ok - glib/macros.test 898s # Running test: glib/shell.test 898s ok - glib/shell.test 898s TAP version 14 898s # random seed: R02S9c68ec94a99082f1872fc793f7768d67 898s 1..52 898s # Start of shell tests 898s # Start of cmdline tests 898s test cmdline: foo bar 898s ok 1 /shell/cmdline/0 898s test cmdline: foo 'bar' 898s ok 2 /shell/cmdline/1 898s test cmdline: foo "bar" 898s ok 3 /shell/cmdline/2 898s test cmdline: foo '' 'bar' 898s ok 4 /shell/cmdline/3 898s test cmdline: foo "bar"'baz'blah'foo'\''blah'"boo" 898s ok 5 /shell/cmdline/4 898s test cmdline: foo blah foo bar baz 898s ok 6 /shell/cmdline/5 898s test cmdline: foo ' spaces more spaces lots of spaces in this ' 898s ok 7 /shell/cmdline/6 898s test cmdline: foo \ 898s bar 898s ok 8 /shell/cmdline/7 898s test cmdline: foo '' '' 898s ok 9 /shell/cmdline/8 898s test cmdline: foo \" la la la 898s ok 10 /shell/cmdline/9 898s test cmdline: foo \ foo woo woo\ 898s ok 11 /shell/cmdline/10 898s test cmdline: foo "yada yada \$\"" 898s ok 12 /shell/cmdline/11 898s test cmdline: foo "c:\\" 898s ok 13 /shell/cmdline/12 898s test cmdline: foo # bla bla bla 898s bar 898s ok 14 /shell/cmdline/13 898s test cmdline: foo a#b 898s ok 15 /shell/cmdline/14 898s test cmdline: #foo 898s ok 16 /shell/cmdline/15 898s test cmdline: foo bar \ 898s ok 17 /shell/cmdline/16 898s test cmdline: foo 'bar baz 898s ok 18 /shell/cmdline/17 898s test cmdline: foo '"bar" baz 898s ok 19 /shell/cmdline/18 898s test cmdline: 898s ok 20 /shell/cmdline/19 898s test cmdline: 898s ok 21 /shell/cmdline/20 898s test cmdline: # foo bar 898s ok 22 /shell/cmdline/21 898s test cmdline: # 898s ok 23 /shell/cmdline/22 898s test cmdline: foo '/bar/summer'\''09 tours.pdf' 898s ok 24 /shell/cmdline/23 898s # End of cmdline tests 898s # Start of quote tests 898s ok 25 /shell/quote/0 898s ok 26 /shell/quote/1 898s ok 27 /shell/quote/2 898s ok 28 /shell/quote/3 898s ok 29 /shell/quote/4 898s ok 30 /shell/quote/5 898s ok 31 /shell/quote/6 898s # End of quote tests 898s # Start of unquote tests 898s ok 32 /shell/unquote/0 898s ok 33 /shell/unquote/1 898s ok 34 /shell/unquote/2 898s ok 35 /shell/unquote/3 898s ok 36 /shell/unquote/4 898s ok 37 /shell/unquote/5 898s ok 38 /shell/unquote/6 898s ok 39 /shell/unquote/7 898s ok 40 /shell/unquote/8 898s ok 41 /shell/unquote/9 898s ok 42 /shell/unquote/10 898s ok 43 /shell/unquote/11 898s ok 44 /shell/unquote/12 898s ok 45 /shell/unquote/13 898s ok 46 /shell/unquote/14 898s ok 47 /shell/unquote/15 898s ok 48 /shell/unquote/16 898s ok 49 /shell/unquote/17 898s ok 50 /shell/unquote/18 898s ok 51 /shell/unquote/19 898s ok 52 /shell/unquote/20 898s # End of unquote tests 898s # End of shell tests 898s TAP version 14 898s # random seed: R02S0a8729bead8dec296dd90ac087e17cce 898s 1..9 898s # Start of GObject tests 898s # Start of SignalGroup tests 898s ok 1 /GObject/SignalGroup/invalid 898s ok 2 /GObject/SignalGroup/simple 898s ok 3 /GObject/SignalGroup/changing-target 898s ok 4 /GObject/SignalGroup/blocking 898s ok 5 /GObject/SignalGroup/weak-ref-target 898s ok 6 /GObject/SignalGroup/connect-object 898s ok 7 /GObject/SignalGroup/signal-parsing 898s ok 8 /GObject/SignalGroup/properties 898s ok 9 /GObject/SignalGroup/interface 898s # Start of signal-parsing tests 898s # End of signal-parsing tests 898s # End of SignalGroup tests 898s # End of GObject tests 898s # Running test: glib/signalgroup.test 898s ok - glib/signalgroup.test 898s # Running test: glib/thumbnail-verification.test 898s TAP version 14 898s # random seed: R02Seada989224f4e7c3a7eb40435b0ef869 898s 1..1 898s # Start of png-thumbs tests 898s ok 1 /png-thumbs/validity 898s # End of png-thumbs tests 898s ok - glib/thumbnail-verification.test 898s # Running test: glib/portal-support-flatpak-gsettings-only.test 898s TAP version 14 898s # random seed: R02Saf9cc3949ba438e5d98f1bd76b3abf0b 898s 1..1 898s # Start of portal-support tests 898s # Start of flatpak tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/system-config1:/tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/system-data1:/tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/runtime 898s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-gsettings-only_0FYJK3/portal-support/flatpak/gsettings/.dirs/runtime/.flatpak-info 898s ok - glib/portal-support-flatpak-gsettings-only.test 898s ok 1 /portal-support/flatpak/gsettings 898s # End of flatpak tests 898s # End of portal-support tests 898s # Running test: glib/glistmodel.test 898s TAP version 14 898s # random seed: R02Sb5f32d46325efd6e523532dc52975659 898s 1..18 898s # Start of glistmodel tests 898s # Start of store tests 898s ok 1 /glistmodel/store/properties 898s ok 2 /glistmodel/store/non-gobjects 898s ok 3 /glistmodel/store/boundaries 898s ok 4 /glistmodel/store/refcounts 898s ok 5 /glistmodel/store/sorted 898s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307 898s ok 6 /glistmodel/store/splice-replace-middle 898s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307 898s ok 7 /glistmodel/store/splice-replace-all 898s ok 8 /glistmodel/store/splice-noop 898s ok 9 /glistmodel/store/splice-remove-multiple 898s ok 10 /glistmodel/store/splice-add-multiple 898s ok 11 /glistmodel/store/splice-wrong-type 898s ok 12 /glistmodel/store/item-type 898s ok 13 /glistmodel/store/remove-all 898s ok 14 /glistmodel/store/sort 898s ok 15 /glistmodel/store/get-item-cache 898s ok 16 /glistmodel/store/items-changed 898s ok 17 /glistmodel/store/past-end 898s ok 18 /glistmodel/store/find 898s # End of store tests 898s # End of glistmodel tests 898s ok - glib/glistmodel.test 898s # Running test: glib/gdbus-auth.test 898s TAP version 14 898s # random seed: R02S382e18392fdfdc6dd7d317795003beb7 898s 1..5 898s # Start of gdbus tests 898s # Start of auth tests 898s # Start of client tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/system-config1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/system-data1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/EXTERNAL/.dirs/runtime 898s ok 1 /gdbus/auth/client/EXTERNAL 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-config1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-data1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/runtime 898s ok - glib/gdbus-auth.test 898s # Running test: glib/pathbuf.test 898s ok 2 /gdbus/auth/client/DBUS_COOKIE_SHA1 898s # End of client tests 898s # Start of server tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/system-config1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/system-data1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/ANONYMOUS/.dirs/runtime 898s ok 3 /gdbus/auth/server/ANONYMOUS 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/system-config1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/system-data1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/EXTERNAL/.dirs/runtime 898s ok 4 /gdbus/auth/server/EXTERNAL 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-config1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-data1:/tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_GTBFK3/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/runtime 898s ok 5 /gdbus/auth/server/DBUS_COOKIE_SHA1 898s # End of server tests 898s # End of auth tests 898s # End of gdbus tests 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s TAP version 14 898s # random seed: R02S5d5068acd5e3da761c105f1af719dfb1 898s 1..3 898s # Start of pathbuf tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/system-config1:/tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/system-data1:/tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_FYIFK3/pathbuf/init/.dirs/runtime 898s # Initializing empty path buf 898s # Initializing with empty path 898s # Initializing with full path 898s # Initializing with no path 898s # Allocating GPathBuf on the heap 898s ok 1 /pathbuf/init 898s ok - glib/pathbuf.test 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/system-config1:/tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/system-data1:/tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_FYIFK3/pathbuf/push-pop/.dirs/runtime 898s # Pushing relative path component 898s # Pushing absolute path component 898s # Popping a path component 898s # Can't pop the last element of a path buffer 898s ok 2 /pathbuf/push-pop 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/system-config1:/tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/system-data1:/tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_FYIFK3/pathbuf/filename-extension/.dirs/runtime 898s ok 3 /pathbuf/filename-extension 898s # End of pathbuf tests 898s # Running test: glib/gdbus-test-codegen-min-required-2-64.test 898s TAP version 14 898s # random seed: R02S4d9db1420fc739b9e58b4b8a43d04135 898s 1..8 898s # Start of gdbus tests 898s # Start of codegen tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/annotations/.dirs/runtime 898s ok 1 /gdbus/codegen/annotations 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/interface_stability/.dirs/runtime 898s ok 2 /gdbus/codegen/interface_stability 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/object-manager/.dirs/runtime 898s ok 3 /gdbus/codegen/object-manager 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/property-naming/.dirs/runtime 898s ok 4 /gdbus/codegen/property-naming 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/autocleanups/.dirs/runtime 898s ok 5 /gdbus/codegen/autocleanups 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/deprecations/.dirs/runtime 898s ok 6 /gdbus/codegen/deprecations 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/standalone-interface-info/.dirs/runtime 898s ok 7 /gdbus/codegen/standalone-interface-info 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_I3NGK3/gdbus/codegen/unix-fd-list/.dirs/runtime 898s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726 898s ok 8 /gdbus/codegen/unix-fd-list 898s # End of codegen tests 898s # End of gdbus tests 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s ok - glib/gdbus-test-codegen-min-required-2-64.test 898s # Running test: glib/atomic-c-17.test 898s TAP version 14 898s # random seed: R02S4ee23e82ebd827cc7dcae78344ee88af 898s 1..2 898s # Start of atomic tests 898s ok 1 /atomic/types 898s ok 2 /atomic/threaded 898s # End of atomic tests 898s ok - glib/atomic-c-17.test 898s # Running test: glib/gdbus-connection-flush.test 898s TAP version 14 898s # random seed: R02Sa38280a65d7e26bf84830093f0ec35d9 898s 1..2 898s # Start of gdbus tests 898s # Start of connection tests 898s # Start of flush tests 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/system-config1:/tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/system-data1:/tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/busy/.dirs/runtime 898s ok 1 /gdbus/connection/flush/busy 898s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/home 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/cache 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/system-config1:/tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/system-config2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/config 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/system-data1:/tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/system-data2 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/data 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/state 898s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_IHQPK3/gdbus/connection/flush/idle/.dirs/runtime 898s ok 2 /gdbus/connection/flush/idle 898s # End of flush tests 898s # End of connection tests 898s # End of gdbus tests 898s ok - glib/gdbus-connection-flush.test 898s # Running test: glib/static-link.test 898s Test disabled because GLIB_TEST_COMPILATION is not set in the env. 898s If you wish to run this test, set GLIB_TEST_COMPILATION=1 in the env, 898s and make sure you have glib build dependencies installed, including 898s meson. 898s ok # SKIP - glib/static-link.test 898s # Running test: glib/async-splice-output-stream.test 898s TAP version 14 898s # random seed: R02S85638d8e31240c452ee2ddb7dd6f8e3a 898s 1..5 898s # Start of async-splice tests 898s ok 1 /async-splice/copy-chunks 898s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 898s ok 2 /async-splice/copy-chunks-threaded-input 898s ok 3 /async-splice/copy-chunks-threaded-output 898s ok - glib/async-splice-output-stream.test 898s ok 4 /async-splice/copy-chunks-threaded 898s ok 5 /async-splice/cancelled 898s # End of async-splice tests 898s # Running test: glib/defaultvalue.test 898s TAP version 14 898s # random seed: R02Sc4f72d17398216a7193d97b7334132b4 898s ok - glib/defaultvalue.test 898s # Running test: glib/cancellable.test 898s 1..84 898s # Start of Default Values tests 898s ok 1 /Default Values/GAppInfoMonitor # SKIP singleton 898s ok 2 /Default Values/GAppLaunchContext 898s ok 3 /Default Values/GApplicationCommandLine 898s # skipping GApplication:is-remote 898s ok 4 /Default Values/GApplication 898s ok 5 /Default Values/GBinding # SKIP mandatory construct params 898s ok 6 /Default Values/GBindingGroup 898s ok 7 /Default Values/GBufferedInputStream # SKIP mandatory construct params 898s ok 8 /Default Values/GBufferedOutputStream # SKIP mandatory construct params 898s ok 9 /Default Values/GBytesIcon 898s ok 10 /Default Values/GCancellable 898s ok 11 /Default Values/GCharsetConverter # SKIP mandatory construct params 898s ok 12 /Default Values/GConverterInputStream # SKIP mandatory construct params 898s ok 13 /Default Values/GConverterOutputStream # SKIP mandatory construct params 898s ok 14 /Default Values/GCredentials 898s ok 15 /Default Values/GDataInputStream # SKIP mandatory construct params 898s ok 16 /Default Values/GDataOutputStream # SKIP mandatory construct params 898s ok 17 /Default Values/GDBusActionGroup # SKIP mandatory construct params 898s ok 18 /Default Values/GDBusAuthObserver 898s ok 19 /Default Values/GDBusConnection # SKIP mandatory construct params 898s ok 20 /Default Values/GDBusMenuModel # SKIP crash in finalize 898s ok 21 /Default Values/GDBusMessage 898s ok 22 /Default Values/GDBusMethodInvocation # SKIP crash in finalize 898s ok 23 /Default Values/GDBusObjectManagerClient # SKIP mandatory construct params 898s ok 24 /Default Values/GDBusObjectManagerServer # SKIP mandatory construct params 898s ok 25 /Default Values/GDBusObjectProxy 898s ok 26 /Default Values/GDBusObjectSkeleton 898s ok 27 /Default Values/GDBusProxy # SKIP mandatory construct params 898s ok 28 /Default Values/GDBusServer # SKIP mandatory construct params 898s ok 29 /Default Values/GEmblem 898s ok 30 /Default Values/GEmblemedIcon 898s ok 31 /Default Values/GFileEnumerator # SKIP should be abstract 898s ok 32 /Default Values/GFileInfo 898s ok 33 /Default Values/GFileInputStream 898s ok 34 /Default Values/GFileIOStream # SKIP should be abstract 898s ok 35 /Default Values/GFileOutputStream 898s ok 36 /Default Values/GFilenameCompleter 898s ok 37 /Default Values/GInetAddress # SKIP mandatory construct params 898s ok 38 /Default Values/GInetAddressMask # SKIP initialization failed 898s ok 39 /Default Values/GInetSocketAddress # SKIP mandatory construct params 898s ok 40 /Default Values/GInitiallyUnowned 898s ok 41 /Default Values/GIOModule 898s ok 42 /Default Values/GListStore 898s ok 43 /Default Values/GMemoryInputStream 898s ok 44 /Default Values/GMemoryOutputStream 898s ok 45 /Default Values/GMenu 898s ok 46 /Default Values/GMenuItem 898s ok 47 /Default Values/GMountOperation 898s ok 48 /Default Values/GNativeSocketAddress 898s ok 49 /Default Values/GNetworkAddress 898s ok 50 /Default Values/GNetworkService 898s ok 51 /Default Values/GNotification 898s ok 52 /Default Values/GObject 898s ok 53 /Default Values/GPropertyAction # SKIP mandatory construct params 898s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’ 898s # skipping GProxyAddressEnumerator:proxy-resolver 898s ok 54 /Default Values/GProxyAddressEnumerator 898s ok 55 /Default Values/GProxyAddress # SKIP mandatory construct params 898s ok 56 /Default Values/GSettings # SKIP mandatory construct params 898s ok 57 /Default Values/GSignalGroup 898s ok 58 /Default Values/GSimpleAction 898s ok 59 /Default Values/GSimpleActionGroup 898s ok 60 /Default Values/GSimpleAsyncResult 898s ok 61 /Default Values/GSimpleIOStream # SKIP mandatory construct params 898s ok 62 /Default Values/GSimplePermission 898s ok 63 /Default Values/GSimpleProxyResolver 898s # skipping GSocketClient:proxy-resolver 898s ok 64 /Default Values/GSocketClient 898s ok 65 /Default Values/GSocketConnection # SKIP mandatory construct params 898s ok 66 /Default Values/GSocket # SKIP initialization failed 898s ok 67 /Default Values/GSocketListener 898s ok 68 /Default Values/GSocketService 898s ok 69 /Default Values/GSubprocess # SKIP initialization failed 898s ok 70 /Default Values/GSubprocessLauncher 898s # GLib-GIO-DEBUG: GTask 0xf06a0c9bb00 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 898s ok 71 /Default Values/GTask 898s ok 72 /Default Values/GTcpConnection # SKIP mandatory construct params 898s ok 73 /Default Values/GTcpWrapperConnection # SKIP mandatory construct params 898s ok 74 /Default Values/GTestDBus 898s ok 75 /Default Values/GThemedIcon # SKIP mandatory construct params 898s ok 76 /Default Values/GThreadedSocketService 898s ok 77 /Default Values/GTlsInteraction 898s ok 78 /Default Values/GTlsPassword 898s ok 79 /Default Values/GUnixConnection # SKIP mandatory construct params 898s ok 80 /Default Values/GUnixFDList 898s ok 81 /Default Values/GVfs 898s ok 82 /Default Values/GVolumeMonitor 898s ok 83 /Default Values/GZlibCompressor 898s ok 84 /Default Values/GZlibDecompressor 898s # End of Default Values tests 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 898s TAP version 14 898s # random seed: R02Sea34ae8ed2d55304975736e47f65344f 898s 1..18 898s # Start of cancellable tests 898s ok 1 /cancellable/multiple-concurrent # SKIP Not running timing heavy test 898s ok 2 /cancellable/null 898s ok 3 /cancellable/connect-data-is-destroyed-on-disconnect-and-dispose 898s # /cancellable/connect-to-disposing-callback summary: A cancellable signal callback can unref the cancellable 898s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3643 898s ok 4 /cancellable/connect-to-disposing-callback 898s ok 5 /cancellable/connect-cancelled-data-is-destroyed 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 1 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 0 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 1 898s ok 6 /cancellable/connect-to-disposing-callback-with-toggle-reference 898s # /cancellable/connect-cancelled-to-disposing-callback summary: A cancellable signal callback can unref the cancellable 898s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3643 898s ok 7 /cancellable/connect-cancelled-to-disposing-callback 898s ok 8 /cancellable/connect-cancelled-with-destroy-func-disposing-cancellable 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 1 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 0 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 1 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 0 898s # Toggle reference callback for GCancellable (0x11aac9beec00), last: 1 898s ok 9 /cancellable/connect-cancelled-to-disposing-callback-with-toggle-reference 898s # /cancellable/disconnect-on-cancelled-callback-hangs summary: Tests that trying to disconnect a cancellable from the cancelled signal callback will result in a deadlock as per #GCancellable::cancelled 898s ok 10 /cancellable/disconnect-on-cancelled-callback-hangs 898s # /cancellable/resets-on-cancel-callback-hangs summary: Tests that trying to reset a cancellable from the cancelled signal callback will result in a deadlock as per #GCancellable::cancelled 898s ok 11 /cancellable/resets-on-cancel-callback-hangs 898s ok 12 /cancellable/poll-fd 898s # /cancellable/poll-fd-cancelled summary: Tests that cancellation wakes up a pollable FD on creation 898s ok 13 /cancellable/poll-fd-cancelled 898s # /cancellable/poll-fd-cancelled-threaded summary: Tests that a cancellation wakes up a pollable FD 898s ok 14 /cancellable/poll-fd-cancelled-threaded 898s # /cancellable/cancel-reset-races summary: Tests threads racing for cancelling and resetting a GCancellable 898s ok 15 /cancellable/cancel-reset-races 898s # /cancellable/cancel-reset-connect-races summary: Tests threads racing for cancelling, connecting and disconnecting and resetting a GCancellable 898s not ok 16 /cancellable/cancel-reset-connect-races # TODO We didn't really checked if callbacks is called properly 898s # End of cancellable tests 898s # Start of cancellable-source tests 898s # /cancellable-source/threaded-dispose summary: Test a thread race between disposing of a GCancellableSource (in one thread) and cancelling the GCancellable it refers to (in another thread) 898s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1841 899s # Executing: glib/cancellable.test 899s ok - glib/cancellable.test 899s # Running test: glib/dynamictype.test 899s ok 17 /cancellable-source/threaded-dispose 899s # slow test /cancellable-source/threaded-dispose executed in 0.85 secs 899s # /cancellable-source/can-be-fired-multiple-times summary: Test a cancellable source callback can be called multiple times 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/774 899s ok 18 /cancellable-source/can-be-fired-multiple-times 899s # End of cancellable-source tests 899s ok - glib/dynamictype.test 899s # Running test: glib/fdo-notification-backend.test 899s ok - glib/fdo-notification-backend.test 899s TAP version 14 899s # random seed: R02Scdb8d63460e0ad046adb7d8590b67f5c 899s 1..2 899s # Start of gobject tests 899s ok 1 /gobject/dynamic-type 899s # Start of dynamic-type tests 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/623 899s ok 2 /gobject/dynamic-type/query 899s # End of dynamic-type tests 899s # End of gobject tests 899s TAP version 14 899s # random seed: R02Sbb05aefaf007dcd87d855920e75c3f31 899s 1..2 899s # Start of fdo-notification-backend tests 899s # Test constructing a GFdoNotificationBackend 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 1 /fdo-notification-backend/construction 899s # Start of dbus tests 899s # /fdo-notification-backend/dbus/activate-action summary: Test how the backend handles valid and invalid ActionInvoked signals from the daemon 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 2 /fdo-notification-backend/dbus/activate-action 899s # End of dbus tests 899s # End of fdo-notification-backend tests 899s # Running test: glib/gdbus-connection.test 899s TAP version 14 899s # random seed: R02S8807d2dc1929c82b99496c02273255b3 899s 1..9 899s # Start of gdbus tests 899s # Start of connection tests 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/bus-failure/.dirs/runtime 899s ok 1 /gdbus/connection/bus-failure 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/basic/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 2 /gdbus/connection/basic 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/life-cycle/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 3 /gdbus/connection/life-cycle 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/send/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 4 /gdbus/connection/send 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signals/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 5 /gdbus/connection/signals 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/signal-match-rules/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 6 /gdbus/connection/signal-match-rules 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/filter/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 7 /gdbus/connection/filter 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/serials/.dirs/runtime 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 8 /gdbus/connection/serials 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/system-config1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/system-data1:/tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_8X14J3/gdbus/connection/cancel/.dirs/runtime 899s # /gdbus/connection/cancel summary: Test that cancelling one of two racing g_bus_get() calls does not cancel the other one 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 899s ok 9 /gdbus/connection/cancel 899s # End of connection tests 899s # End of gdbus tests 899s ok - glib/gdbus-connection.test 899s # Running test: glib/gdbus-serialization.test 899s TAP version 14 899s # random seed: R02S37c0675c0e895b0c87a2a359e7a2a8bc 899s 1..18 899s # Start of gdbus tests 899s # Start of message-serialize tests 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/basic/.dirs/runtime 899s ok 1 /gdbus/message-serialize/basic 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/complex/.dirs/runtime 899s ok 2 /gdbus/message-serialize/complex 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/invalid/.dirs/runtime 899s ok 3 /gdbus/message-serialize/invalid 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/.dirs/runtime 899s ok 4 /gdbus/message-serialize/header-checks 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/double-array/.dirs/runtime 899s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=732754 899s ok 5 /gdbus/message-serialize/double-array 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/empty-structure/.dirs/runtime 899s # /gdbus/message-serialize/empty-structure summary: Test that empty structures are rejected when serializing. 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2557 899s ok 6 /gdbus/message-serialize/empty-structure 899s # Start of header-checks tests 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-serialize/header-checks/valid/.dirs/runtime 899s # /gdbus/message-serialize/header-checks/valid summary: Test that validation allows well-formed messages of all the different types 899s ok 7 /gdbus/message-serialize/header-checks/valid 899s # End of header-checks tests 899s # End of message-serialize tests 899s # Start of message-parse tests 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-arrays-of-arrays/.dirs/runtime 899s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=673612 899s ok 8 /gdbus/message-parse/empty-arrays-of-arrays 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/non-signature-header/.dirs/runtime 899s ok 9 /gdbus/message-parse/non-signature-header 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-signature-header/.dirs/runtime 899s ok 10 /gdbus/message-parse/empty-signature-header 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/multiple-signature-header/.dirs/runtime 899s ok 11 /gdbus/message-parse/multiple-signature-header 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/over-long-signature-header/.dirs/runtime 899s ok 12 /gdbus/message-parse/over-long-signature-header 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-header-nesting/.dirs/runtime 899s ok 13 /gdbus/message-parse/deep-header-nesting 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/deep-body-nesting/.dirs/runtime 899s ok 14 /gdbus/message-parse/deep-body-nesting 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/truncated/.dirs/runtime 899s # /gdbus/message-parse/truncated summary: Test that truncated messages are properly rejected. 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2528 899s ok 15 /gdbus/message-parse/truncated 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/empty-structure/.dirs/runtime 899s # /gdbus/message-parse/empty-structure summary: Test that empty structures are rejected when parsing. 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2557 899s ok 16 /gdbus/message-parse/empty-structure 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/missing-header/.dirs/runtime 899s # /gdbus/message-parse/missing-header summary: Test that missing (required) headers prompt an error. 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3061 899s ok 17 /gdbus/message-parse/missing-header 899s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/home 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/cache 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/system-config1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/system-config2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/config 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/system-data1:/tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/system-data2 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/data 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/state 899s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_4U7BK3/gdbus/message-parse/invalid-header-type/.dirs/runtime 899s # /gdbus/message-parse/invalid-header-type summary: Test that the type of well-known headers is checked. 899s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3061 899s ok 18 /gdbus/message-parse/invalid-header-type 899s # End of message-parse tests 899s # End of gdbus tests 899s ok - glib/gdbus-serialization.test 899s # Running test: glib/stream-rw_all.test 899s TAP version 14 899s # random seed: R02Sa167a68bfb92903c7fdc1b9ec031f8f4 899s 1..3 899s # Start of stream tests 899s # Start of read_all_async tests 899s ok 1 /stream/read_all_async/memory 899s # End of read_all_async tests 899s # Start of write_all_async tests 899s ok 2 /stream/write_all_async/memory 899s # End of write_all_async tests 899s # Start of read_write_all_async tests 899s ok 3 /stream/read_write_all_async/pipe 899s # End of read_write_all_async tests 899s # End of stream tests 899s ok - glib/stream-rw_all.test 899s # Running test: glib/print.test 900s ok - glib/print.test 900s TAP version 14 900s # random seed: R02S5ddc05de82e7020c70b8c2b53768da72 900s 1..1 900s ok 1 /print-console # SKIP Testing console output only supported on Windows 900s # Running test: glib/file-thumbnail.test 900s TAP version 14 900s # random seed: R02Sd4ae6cd0fd511b9f17fc2a2477635da5 900s 1..7 900s # Start of file-thumbnail tests 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/runtime 900s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/fail/.dirs/cache/thumbnails/fail/gnome-thumbnail-factory/f098bcae74f8241ee3835bded7284cdd.png 900s ok 1 /file-thumbnail/fail 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache/thumbnails/fail/gnome-thumbnail-factory/f098bcae74f8241ee3835bded7284cdd.png 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache/thumbnails/normal/f098bcae74f8241ee3835bded7284cdd.png 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache/thumbnails/large/f098bcae74f8241ee3835bded7284cdd.png 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache/thumbnails/x-large/f098bcae74f8241ee3835bded7284cdd.png 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/size-priority/.dirs/cache/thumbnails/xx-large/f098bcae74f8241ee3835bded7284cdd.png 900s ok 2 /file-thumbnail/size-priority 900s # Start of valid tests 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/normal/.dirs/cache/thumbnails/normal/f098bcae74f8241ee3835bded7284cdd.png 900s ok 3 /file-thumbnail/valid/normal 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/large/.dirs/cache/thumbnails/large/f098bcae74f8241ee3835bded7284cdd.png 900s ok 4 /file-thumbnail/valid/large 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/x-large/.dirs/cache/thumbnails/x-large/f098bcae74f8241ee3835bded7284cdd.png 900s ok 5 /file-thumbnail/valid/x-large 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/valid/xx-large/.dirs/cache/thumbnails/xx-large/f098bcae74f8241ee3835bded7284cdd.png 900s ok 6 /file-thumbnail/valid/xx-large 900s # End of valid tests 900s # Start of unknown tests 900s ok - glib/file-thumbnail.test 900s # Running test: glib/timer.test 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/system-config1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/system-data1:/tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/runtime 900s # Created test thumbnail at /tmp/test_file-thumbnail_XGIDK3/file-thumbnail/unknown/super-large/.dirs/cache/thumbnails/super-large/f098bcae74f8241ee3835bded7284cdd.png 900s ok 7 /file-thumbnail/unknown/super-large 900s # End of unknown tests 900s # End of file-thumbnail tests 900s TAP version 14 900s # random seed: R02S56505f4098c0b40abd9a9ac444902c8b 900s 1..10 900s # Start of timer tests 900s ok 1 /timer/basic # SKIP Not reliable due to floating-point rounding (glib#820) 900s ok 2 /timer/stop 900s ok 3 /timer/continue 900s ok 4 /timer/reset 900s ok 5 /timer/is_active 900s # End of timer tests 900s # Start of timeval tests 900s ok 6 /timeval/add 900s ok 7 /timeval/from-iso8601 900s ok 8 /timeval/to-iso8601 900s # Start of to-iso8601 tests 900s ok 9 /timeval/to-iso8601/overflow 900s # End of to-iso8601 tests 900s # End of timeval tests 900s # Start of usleep tests 900s ok - glib/timer.test 900s ok 10 /usleep/with-zero-wait 900s # End of usleep tests 900s # Running test: glib/atomic-c-99.test 900s TAP version 14 900s # random seed: R02S43b167174055f6323d7390976bad5ab7 900s 1..2 900s # Start of atomic tests 900s ok 1 /atomic/types 900s ok - glib/atomic-c-99.test 900s ok 2 /atomic/threaded 900s # End of atomic tests 900s # Running test: glib/gdbus-introspection.test 900s TAP version 14 900s # random seed: R02S769448493bce9a10195857b9666000b9 900s 1..4 900s # Start of gdbus tests 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/system-config1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/system-data1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-parser/.dirs/runtime 900s ok 1 /gdbus/introspection-parser 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/system-config1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/system-data1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-generate/.dirs/runtime 900s ok 2 /gdbus/introspection-generate 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/system-config1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/system-data1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-default-direction/.dirs/runtime 900s ok 3 /gdbus/introspection-default-direction 900s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/home 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/cache 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/system-config1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/system-config2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/config 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/system-data1:/tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/system-data2 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/data 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/state 900s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_NETAK3/gdbus/introspection-extra-data/.dirs/runtime 900s ok 4 /gdbus/introspection-extra-data 900s # End of gdbus tests 900s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 900s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 900s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 900s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 900s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 900s ok - glib/gdbus-introspection.test 900s # Running test: glib/memory-input-stream.test 900s TAP version 14 900s # random seed: R02S7faf7789fb1c2b3a73b10c7a685ddfff 900s 1..6 900s # Start of memory-input-stream tests 900s ok 1 /memory-input-stream/read-chunks 900s ok - glib/memory-input-stream.test 900s # Running test: glib/io-stream.test 900s ok 2 /memory-input-stream/async 900s ok 3 /memory-input-stream/seek 900s ok 4 /memory-input-stream/truncate 900s ok 5 /memory-input-stream/read-bytes 900s ok 6 /memory-input-stream/from-bytes 900s # End of memory-input-stream tests 900s TAP version 14 900s # random seed: R02S0e4b6d5204f49b96bf523af152bce82b 900s 1..3 900s # Start of io-stream tests 900s ok 1 /io-stream/copy-chunks 900s # Start of close tests 900s # Start of async tests 900s ok 2 /io-stream/close/async/memory 900s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 900s ok - glib/io-stream.test 900s ok 3 /io-stream/close/async/file 900s # End of async tests 900s # End of close tests 900s # End of io-stream tests 900s # Running test: glib/environment.test 900s TAP version 14 900s # random seed: R02S8a0a09c9859dd30aa32b4ff205f1c273 900s 1..7 900s # Start of environ tests 900s # /environ/listenv summary: Test g_get_environ() returns an array of unique keys, all of which can be individually queried using g_getenv() to return the same value. 900s ok 1 /environ/listenv 900s # /environ/getenv summary: Test setting an environment variable using g_setenv(), and that the updated value is queryable using g_getenv(). 900s ok 2 /environ/getenv 900s ok 3 /environ/setenv 900s # /environ/array summary: Test getting and setting variables on a local envp array (rather than the global envp). 900s ok 4 /environ/array 900s # /environ/null summary: Test getting and setting variables on a NULL envp array. 900s ok 5 /environ/null 900s # /environ/case summary: Test that matching environment variables is case-insensitive on Windows and not on other platforms, since envvars were case-insensitive on DOS. 900s ok 6 /environ/case 900s # /environ/expansion summary: Test expansion of environment variable references. 900s ok 7 /environ/expansion # SKIP Environment variable expansion is only supported on Windows 900s # End of environ tests 900s ok - glib/environment.test 900s # Running test: glib/performance-threaded.test 900s Running test "liststore-is-a" 901s 2222 runs, min/avg/max = 0.435/0.450/0.614 ms 901s Running test "liststore-interface-peek" 902s 2786 runs, min/avg/max = 0.347/0.359/1.175 ms 902s Running test "liststore-interface-peek-same" 903s ok - glib/performance-threaded.test 903s 2778 runs, min/avg/max = 0.347/0.360/0.498 ms 903s # Running test: glib/basics-gobject.test 903s TAP version 14 903s # random seed: R02S1ff1559e0b254a48fb204a02468c2d9c 903s 1..1 903s # Start of gobject tests 903s # private data during initialization: 54321 == 54321 903s # MAIN: emit test-signal: 903s # ::test_signal default_handler called 903s # ::test_signal default_handler called 903s # ::test_signal default_handler called 903s # signal return: "" 903s # MAIN: call iface print-string on test and derived object: 903s # Iface-FOO: "iface-string-from-test-type" from 0x123a3e7de870 903s # Iface-BAR: "iface-string-from-derived-type" from 0x123a3e7de720 903s # chaining: 903s # Iface-FOO: "iface-string-from-derived-type" from 0x123a3e7de720 903s # private data after initialization: 54321 == 54321 903s ok 1 /gobject/basics 903s # End of gobject tests 903s ok - glib/basics-gobject.test 903s TAP version 14 903s # random seed: R02S193cc6be923741f3caf82b282a1f8276 903s 1..5 903s # Start of once tests 903s # /once/single-threaded summary: Test g_once() usage from a single thread 903s ok 1 /once/single-threaded 903s # /once/multi-threaded summary: Test g_once() usage from multiple threads 903s ok 2 /once/multi-threaded 903s # End of once tests 903s # Start of once-init tests 903s # /once-init/single-threaded summary: Test g_once_init_{enter,leave}() usage from a single thread 903s ok 3 /once-init/single-threaded 903s # /once-init/multi-threaded summary: Test g_once_init_{enter,leave}() usage from multiple threads 903s ok 4 /once-init/multi-threaded 903s # /once-init/string summary: Test g_once_init_{enter,leave}() usage with a string 903s ok 5 /once-init/string 903s # End of once-init tests 903s TAP version 14 903s # random seed: R02S17179880ecf82cb83f8a3efa1c9d5130 903s 1..17 903s # Start of thread tests 903s ok 1 /thread/mutex1 903s ok 2 /thread/mutex2 903s ok 3 /thread/mutex3 903s ok 4 /thread/mutex4 903s # Running test: glib/once.test 903s ok - glib/once.test 903s # Running test: glib/mutex.test 904s # Executing: glib/mutex.test 908s ok 5 /thread/mutex5 908s # slow test /thread/mutex5 executed in 5.06 secs 908s # Start of mutex tests 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s # /thread/mutex/errno summary: Validates that errno is not touched upon return 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 908s ok 6 /thread/mutex/errno 908s # Start of perf tests 908s # max perf: 1.000000 mips 908s ok 7 /thread/mutex/perf/uncontended 908s # Start of contended tests 908s # max perf: inf mips 908s ok 8 /thread/mutex/perf/contended/1 908s # max perf: inf mips 908s ok 9 /thread/mutex/perf/contended/2 908s # max perf: inf mips 908s ok 10 /thread/mutex/perf/contended/3 908s # max perf: inf mips 908s ok 11 /thread/mutex/perf/contended/4 908s # max perf: inf mips 908s ok 12 /thread/mutex/perf/contended/5 908s # max perf: 1.750000 mips 908s ok 13 /thread/mutex/perf/contended/6 908s # max perf: 8.000000 mips 908s ok 14 /thread/mutex/perf/contended/7 908s # max perf: 2.250000 mips 908s ok 15 /thread/mutex/perf/contended/8 908s # max perf: 2.500000 mips 908s ok 16 /thread/mutex/perf/contended/9 908s # max perf: 2.750000 mips 908s ok 17 /thread/mutex/perf/contended/10 908s # End of contended tests 908s # End of perf tests 908s # End of mutex tests 908s # End of thread tests 908s ok - glib/mutex.test 908s # Running test: glib/autoptr.test 908s TAP version 14 908s # random seed: R02S0d043b147eaf057573874d97abcb5f48 908s 1..6 908s # Start of autoptr tests 908s ok 1 /autoptr/autoptr 908s ok 2 /autoptr/autoptr_steal 908s ok 3 /autoptr/autolist 908s ok 4 /autoptr/autoslist 908s ok 5 /autoptr/autoqueue 908s ok 6 /autoptr/autoclass 908s # End of autoptr tests 908s ok - glib/autoptr.test 908s # Running test: glib/hash.test 908s ok - glib/hash.test 908s # Running test: glib/slist.test 908s ok - glib/slist.test 908s # Running test: glib/basic-signals.test 908s ok - glib/basic-signals.test 908s # Running test: glib/cxx-11.test 908s ok - glib/cxx-11.test 908s # Running test: glib/utf8-validate.test 908s TAP version 14 908s # random seed: R02Sfd86bd5febc3026ea4a9fcad193123c3 908s 1..34 908s # Start of hash tests 908s ok 1 /hash/misc 908s ok 2 /hash/one 908s ok 3 /hash/honeyman 908s ok 4 /hash/direct 908s ok 5 /hash/direct2 908s ok 6 /hash/int 908s ok 7 /hash/int64 908s ok 8 /hash/double 908s ok 9 /hash/string 908s ok 10 /hash/set 908s ok 11 /hash/set-ref 908s ok 12 /hash/ref 908s ok 13 /hash/remove-all 908s ok 14 /hash/recursive-remove-all 908s ok 15 /hash/find 908s ok 16 /hash/foreach 908s ok 17 /hash/foreach-steal 908s ok 18 /hash/steal-extended 908s ok 19 /hash/steal-all-keys 908s ok 20 /hash/steal-all-values 908s ok 21 /hash/lookup-extended 908s ok 22 /hash/new-similar 908s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642944 908s ok 23 /hash/lookup-null-key 908s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=650459 908s ok 24 /hash/destroy-modify 908s ok 25 /hash/consistency 908s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=662544 908s ok 26 /hash/iter-replace 908s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=692815 908s ok 27 /hash/set-insert-corruption 908s ok 28 /hash/set-to-strv 908s ok 29 /hash/get-keys-as-ptr-array 908s ok 30 /hash/get-values-as-ptr-array 908s ok 31 /hash/primes 908s # Start of int64 tests 908s # /hash/int64/collisions summary: Check int64 Hash collisions caused by ignoring high word 908s ok 32 /hash/int64/collisions 908s # End of int64 tests 908s # Start of double tests 908s # /hash/double/collisions summary: Check double Hash collisions caused by int conversion and by numbers larger than 2^64-1 (G_MAXUINT64) 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2771 908s ok 33 /hash/double/collisions 908s # End of double tests 908s # Start of recursive-remove-all tests 908s # End of recursive-remove-all tests 908s # Start of steal-extended tests 908s ok 34 /hash/steal-extended/optional 908s # End of steal-extended tests 908s # End of hash tests 908s TAP version 14 908s # random seed: R02S8e9f6314f6ad04a5c7e789cef4a9887c 908s 1..14 908s # Start of slist tests 908s ok 1 /slist/sort 908s ok 2 /slist/sort-with-data 908s ok 3 /slist/insert-sorted 908s ok 4 /slist/insert-sorted-with-data 908s ok 5 /slist/reverse 908s ok 6 /slist/nth 908s ok 7 /slist/remove 908s ok 8 /slist/remove-all 908s ok 9 /slist/insert 908s ok 10 /slist/position 908s ok 11 /slist/concat 908s ok 12 /slist/copy 908s # Start of sort tests 908s ok 13 /slist/sort/stable 908s # End of sort tests 908s # Start of copy tests 908s ok 14 /slist/copy/deep 908s # End of copy tests 908s # End of slist tests 908s TAP version 14 908s # random seed: R02S76494ef26192bfa56324b38446a7284b 908s 1..1 908s # Start of gobject tests 908s ok 1 /gobject/basic-signals 908s # End of gobject tests 908s TAP version 14 908s # random seed: R02S34446920481cea3dfd5abe9f55e458e8 908s 1..2 908s # Start of gtask tests 908s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 908s ok 1 /gtask/name 908s # Start of name tests 908s # GLib-GIO-DEBUG: GTask some other name (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 908s ok 2 /gtask/name/macro-wrapper 908s # End of name tests 908s # End of gtask tests 908s ok - glib/utf8-validate.test 908s # Running test: glib/custom-dispatch.test 908s ok - glib/custom-dispatch.test 908s # Running test: glib/markup-parse.test 908s TAP version 14 908s # random seed: R02S261068dbeb76f93d609399ce72c936f6 908s 1..238 908s # Start of utf8 tests 908s # Vector 0 908s # Vector 1 908s # Vector 2 908s # Vector 3 908s # Vector 4 908s # Vector 5 908s # Vector 6 908s # Vector 7 908s # Vector 8 908s # Vector 9 908s # Vector 10 908s # Vector 11 908s # Vector 12 908s # Vector 13 908s # Vector 14 908s # Vector 15 908s # Vector 16 908s # Vector 17 908s # Vector 18 908s # Vector 19 908s # Vector 20 908s # Vector 21 908s # Vector 22 908s # Vector 23 908s # Vector 24 908s # Vector 25 908s # Vector 26 908s # Vector 27 908s ok 1 /utf8/get-char-validated 908s # Start of validate tests 908s ok 2 /utf8/validate/0 908s ok 3 /utf8/validate/1 908s ok 4 /utf8/validate/2 908s ok 5 /utf8/validate/3 908s ok 6 /utf8/validate/4 908s ok 7 /utf8/validate/5 908s ok 8 /utf8/validate/6 908s ok 9 /utf8/validate/7 908s ok 10 /utf8/validate/8 908s ok 11 /utf8/validate/9 908s ok 12 /utf8/validate/10 908s ok 13 /utf8/validate/11 908s ok 14 /utf8/validate/12 908s ok 15 /utf8/validate/13 908s ok 16 /utf8/validate/14 908s ok 17 /utf8/validate/15 908s ok 18 /utf8/validate/16 908s ok 19 /utf8/validate/17 908s ok 20 /utf8/validate/18 908s ok 21 /utf8/validate/19 908s ok 22 /utf8/validate/20 908s ok 23 /utf8/validate/21 908s ok 24 /utf8/validate/22 908s ok 25 /utf8/validate/23 908s ok 26 /utf8/validate/24 908s ok 27 /utf8/validate/25 908s ok 28 /utf8/validate/26 908s ok 29 /utf8/validate/27 908s ok 30 /utf8/validate/28 908s ok 31 /utf8/validate/29 908s ok 32 /utf8/validate/30 908s ok 33 /utf8/validate/31 908s ok 34 /utf8/validate/32 908s ok 35 /utf8/validate/33 908s ok 36 /utf8/validate/34 908s ok 37 /utf8/validate/35 908s ok 38 /utf8/validate/36 908s ok 39 /utf8/validate/37 908s ok 40 /utf8/validate/38 908s ok 41 /utf8/validate/39 908s ok 42 /utf8/validate/40 908s ok 43 /utf8/validate/41 908s ok 44 /utf8/validate/42 908s ok 45 /utf8/validate/43 908s ok 46 /utf8/validate/44 908s ok 47 /utf8/validate/45 908s ok 48 /utf8/validate/46 908s ok 49 /utf8/validate/47 908s ok 50 /utf8/validate/48 908s ok 51 /utf8/validate/49 908s ok 52 /utf8/validate/50 908s ok 53 /utf8/validate/51 908s ok 54 /utf8/validate/52 908s ok 55 /utf8/validate/53 908s ok 56 /utf8/validate/54 908s ok 57 /utf8/validate/55 908s ok 58 /utf8/validate/56 908s ok 59 /utf8/validate/57 908s ok 60 /utf8/validate/58 908s ok 61 /utf8/validate/59 908s ok 62 /utf8/validate/60 908s ok 63 /utf8/validate/61 908s ok 64 /utf8/validate/62 908s ok 65 /utf8/validate/63 908s ok 66 /utf8/validate/64 908s ok 67 /utf8/validate/65 908s ok 68 /utf8/validate/66 908s ok 69 /utf8/validate/67 908s ok 70 /utf8/validate/68 908s ok 71 /utf8/validate/69 908s ok 72 /utf8/validate/70 908s ok 73 /utf8/validate/71 908s ok 74 /utf8/validate/72 908s ok 75 /utf8/validate/73 908s ok 76 /utf8/validate/74 908s ok 77 /utf8/validate/75 908s ok 78 /utf8/validate/76 908s ok 79 /utf8/validate/77 908s ok 80 /utf8/validate/78 908s ok 81 /utf8/validate/79 908s ok 82 /utf8/validate/80 908s ok 83 /utf8/validate/81 908s ok 84 /utf8/validate/82 908s ok 85 /utf8/validate/83 908s ok 86 /utf8/validate/84 908s ok 87 /utf8/validate/85 908s ok 88 /utf8/validate/86 908s ok 89 /utf8/validate/87 908s ok 90 /utf8/validate/88 908s ok 91 /utf8/validate/89 908s ok 92 /utf8/validate/90 908s ok 93 /utf8/validate/91 908s ok 94 /utf8/validate/92 908s ok 95 /utf8/validate/93 908s ok 96 /utf8/validate/94 908s ok 97 /utf8/validate/95 908s ok 98 /utf8/validate/96 908s ok 99 /utf8/validate/97 908s ok 100 /utf8/validate/98 908s ok 101 /utf8/validate/99 908s ok 102 /utf8/validate/100 908s ok 103 /utf8/validate/101 908s ok 104 /utf8/validate/102 908s ok 105 /utf8/validate/103 908s ok 106 /utf8/validate/104 908s ok 107 /utf8/validate/105 908s ok 108 /utf8/validate/106 908s ok 109 /utf8/validate/107 908s ok 110 /utf8/validate/108 908s ok 111 /utf8/validate/109 908s ok 112 /utf8/validate/110 908s ok 113 /utf8/validate/111 908s ok 114 /utf8/validate/112 908s ok 115 /utf8/validate/113 908s ok 116 /utf8/validate/114 908s ok 117 /utf8/validate/115 908s ok 118 /utf8/validate/116 908s ok 119 /utf8/validate/117 908s ok 120 /utf8/validate/118 908s ok 121 /utf8/validate/119 908s ok 122 /utf8/validate/120 908s ok 123 /utf8/validate/121 908s ok 124 /utf8/validate/122 908s ok 125 /utf8/validate/123 908s ok 126 /utf8/validate/124 908s ok 127 /utf8/validate/125 908s ok 128 /utf8/validate/126 908s ok 129 /utf8/validate/127 908s ok 130 /utf8/validate/128 908s ok 131 /utf8/validate/129 908s ok 132 /utf8/validate/130 908s ok 133 /utf8/validate/131 908s ok 134 /utf8/validate/132 908s ok 135 /utf8/validate/133 908s ok 136 /utf8/validate/134 908s ok 137 /utf8/validate/135 908s ok 138 /utf8/validate/136 908s ok 139 /utf8/validate/137 908s ok 140 /utf8/validate/138 908s ok 141 /utf8/validate/139 908s ok 142 /utf8/validate/140 908s ok 143 /utf8/validate/141 908s ok 144 /utf8/validate/142 908s ok 145 /utf8/validate/143 908s ok 146 /utf8/validate/144 908s ok 147 /utf8/validate/145 908s ok 148 /utf8/validate/146 908s ok 149 /utf8/validate/147 908s ok 150 /utf8/validate/148 908s ok 151 /utf8/validate/149 908s ok 152 /utf8/validate/150 908s ok 153 /utf8/validate/151 908s ok 154 /utf8/validate/152 908s ok 155 /utf8/validate/153 908s ok 156 /utf8/validate/154 908s ok 157 /utf8/validate/155 908s ok 158 /utf8/validate/156 908s ok 159 /utf8/validate/157 908s ok 160 /utf8/validate/158 908s ok 161 /utf8/validate/159 908s ok 162 /utf8/validate/160 908s ok 163 /utf8/validate/161 908s ok 164 /utf8/validate/162 908s ok 165 /utf8/validate/163 908s ok 166 /utf8/validate/164 908s ok 167 /utf8/validate/165 908s ok 168 /utf8/validate/166 908s ok 169 /utf8/validate/167 908s ok 170 /utf8/validate/168 908s ok 171 /utf8/validate/169 908s ok 172 /utf8/validate/170 908s ok 173 /utf8/validate/171 908s ok 174 /utf8/validate/172 908s ok 175 /utf8/validate/173 908s ok 176 /utf8/validate/174 908s ok 177 /utf8/validate/175 908s ok 178 /utf8/validate/176 908s ok 179 /utf8/validate/177 908s ok 180 /utf8/validate/178 908s ok 181 /utf8/validate/179 908s ok 182 /utf8/validate/180 908s ok 183 /utf8/validate/181 908s ok 184 /utf8/validate/182 908s ok 185 /utf8/validate/183 908s ok 186 /utf8/validate/184 908s ok 187 /utf8/validate/185 908s ok 188 /utf8/validate/186 908s ok 189 /utf8/validate/187 908s ok 190 /utf8/validate/188 908s ok 191 /utf8/validate/189 908s ok 192 /utf8/validate/190 908s ok 193 /utf8/validate/191 908s ok 194 /utf8/validate/192 908s ok 195 /utf8/validate/193 908s ok 196 /utf8/validate/194 908s ok 197 /utf8/validate/195 908s ok 198 /utf8/validate/196 908s ok 199 /utf8/validate/197 908s ok 200 /utf8/validate/198 908s ok 201 /utf8/validate/199 908s ok 202 /utf8/validate/200 908s ok 203 /utf8/validate/201 908s ok 204 /utf8/validate/202 908s ok 205 /utf8/validate/203 908s ok 206 /utf8/validate/204 908s ok 207 /utf8/validate/205 908s ok 208 /utf8/validate/206 908s ok 209 /utf8/validate/207 908s ok 210 /utf8/validate/208 908s ok 211 /utf8/validate/209 908s ok 212 /utf8/validate/210 908s ok 213 /utf8/validate/211 908s ok 214 /utf8/validate/212 908s ok 215 /utf8/validate/213 908s ok 216 /utf8/validate/214 908s ok 217 /utf8/validate/215 908s ok 218 /utf8/validate/216 908s ok 219 /utf8/validate/217 908s ok 220 /utf8/validate/218 908s ok 221 /utf8/validate/219 908s ok 222 /utf8/validate/220 908s ok 223 /utf8/validate/221 908s ok 224 /utf8/validate/222 908s ok 225 /utf8/validate/223 908s ok 226 /utf8/validate/224 908s ok 227 /utf8/validate/225 908s ok 228 /utf8/validate/226 908s ok 229 /utf8/validate/227 908s ok 230 /utf8/validate/228 908s ok 231 /utf8/validate/229 908s ok 232 /utf8/validate/230 908s ok 233 /utf8/validate/231 908s ok 234 /utf8/validate/232 908s ok 235 /utf8/validate/233 908s ok 236 /utf8/validate/234 908s ok 237 /utf8/validate/235 908s ok 238 /utf8/validate/236 908s # End of validate tests 908s # End of utf8 tests 908s TAP version 14 908s # random seed: R02S10688b8b1b5ff713078923c3551de75b 908s 1..2 908s # Start of properties tests 908s # Start of custom-dispatch tests 908s # /properties/custom-dispatch/init summary: Test that custom dispatch_properties_changed is called on initialization 908s ok 1 /properties/custom-dispatch/init 908s # /properties/custom-dispatch/set summary: Test that custom dispatch_properties_changed is called regardless of connected notify handlers 908s ok 2 /properties/custom-dispatch/set 908s # End of custom-dispatch tests 908s # End of properties tests 908s TAP version 14 908s # random seed: R02Sb47876a59b3c800993fe553a85f2ebf9 908s 1..71 908s # Start of markup tests 908s # Start of parse tests 908s ok 1 /markup/parse/fail-19.gmarkup 908s ok 2 /markup/parse/fail-47.gmarkup 908s ok 3 /markup/parse/fail-32.gmarkup 908s ok 4 /markup/parse/fail-1.gmarkup 908s ok 5 /markup/parse/fail-42.gmarkup 908s ok 6 /markup/parse/fail-33.gmarkup 908s ok 7 /markup/parse/valid-11.gmarkup 908s ok 8 /markup/parse/fail-54.gmarkup 908s ok 9 /markup/parse/fail-38.gmarkup 908s ok 10 /markup/parse/fail-13.gmarkup 908s ok 11 /markup/parse/fail-11.gmarkup 908s ok 12 /markup/parse/valid-17.gmarkup 908s ok 13 /markup/parse/fail-53.gmarkup 908s ok 14 /markup/parse/fail-44.gmarkup 908s ok 15 /markup/parse/fail-40.gmarkup 908s ok 16 /markup/parse/fail-43.gmarkup 908s ok - glib/markup-parse.test 908s # Running test: glib/utils-c-99.test 908s ok 17 /markup/parse/fail-23.gmarkup 908s ok 18 /markup/parse/valid-9.gmarkup 908s ok 19 /markup/parse/valid-14.gmarkup 908s ok 20 /markup/parse/fail-50.gmarkup 908s ok 21 /markup/parse/fail-30.gmarkup 908s ok 22 /markup/parse/fail-20.gmarkup 908s ok 23 /markup/parse/valid-15.gmarkup 908s ok 24 /markup/parse/fail-29.gmarkup 908s ok 25 /markup/parse/valid-7.gmarkup 908s ok 26 /markup/parse/fail-2.gmarkup 908s ok 27 /markup/parse/valid-13.gmarkup 908s ok 28 /markup/parse/fail-26.gmarkup 908s ok 29 /markup/parse/fail-35.gmarkup 908s ok 30 /markup/parse/fail-10.gmarkup 908s ok 31 /markup/parse/valid-3.gmarkup 908s ok 32 /markup/parse/fail-46.gmarkup 908s ok 33 /markup/parse/valid-4.gmarkup 908s ok 34 /markup/parse/fail-24.gmarkup 908s ok 35 /markup/parse/fail-3.gmarkup 908s ok 36 /markup/parse/valid-5.gmarkup 908s ok 37 /markup/parse/fail-7.gmarkup 908s ok 38 /markup/parse/fail-51.gmarkup 908s ok 39 /markup/parse/valid-10.gmarkup 908s ok 40 /markup/parse/fail-31.gmarkup 908s ok 41 /markup/parse/fail-21.gmarkup 908s ok 42 /markup/parse/fail-9.gmarkup 908s ok 43 /markup/parse/valid-16.gmarkup 908s ok 44 /markup/parse/fail-15.gmarkup 908s ok 45 /markup/parse/fail-36.gmarkup 908s ok 46 /markup/parse/fail-5.gmarkup 908s ok 47 /markup/parse/fail-18.gmarkup 908s ok 48 /markup/parse/fail-14.gmarkup 908s ok 49 /markup/parse/valid-12.gmarkup 908s ok 50 /markup/parse/fail-52.gmarkup 908s ok 51 /markup/parse/fail-17.gmarkup 908s ok 52 /markup/parse/fail-48.gmarkup 908s ok 53 /markup/parse/valid-8.gmarkup 908s ok 54 /markup/parse/fail-6.gmarkup 908s ok 55 /markup/parse/fail-41.gmarkup 908s ok 56 /markup/parse/fail-25.gmarkup 908s ok 57 /markup/parse/fail-49.gmarkup 908s ok 58 /markup/parse/fail-12.gmarkup 908s ok 59 /markup/parse/fail-4.gmarkup 908s ok 60 /markup/parse/fail-22.gmarkup 908s ok 61 /markup/parse/valid-6.gmarkup 908s ok 62 /markup/parse/fail-37.gmarkup 908s ok 63 /markup/parse/fail-8.gmarkup 908s ok 64 /markup/parse/valid-1.gmarkup 908s ok 65 /markup/parse/fail-16.gmarkup 908s ok 66 /markup/parse/fail-45.gmarkup 908s ok 67 /markup/parse/fail-39.gmarkup 908s ok 68 /markup/parse/fail-28.gmarkup 908s ok 69 /markup/parse/valid-2.gmarkup 908s ok 70 /markup/parse/fail-34.gmarkup 908s ok 71 /markup/parse/fail-27.gmarkup 908s # End of parse tests 908s # End of markup tests 908s TAP version 14 908s # random seed: R02S74e3c460551748e0f78f15eb30cc03b9 908s 1..41 908s # Start of utils tests 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/language-names/.dirs/runtime 908s ok 1 /utils/language-names 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/locale-variants/.dirs/runtime 908s # Testing locale ‘en’ 908s # Testing locale ‘sr@latin’ 908s # Testing locale ‘fr_BE’ 908s # Testing locale ‘sr_SR@latin’ 908s # Testing locale ‘sr_SR@latin.UTF-8’ 908s # Testing locale ‘sr@latin_invalid’ 908s # Testing locale ‘sr.UTF-8@latin’ 908s # Testing locale ‘sr.UTF-8_latin’ 908s # Testing locale ‘sr.UTF-8@latin_invalid’ 908s ok 2 /utils/locale-variants 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/version/.dirs/runtime 908s ok 3 /utils/version 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/appname/.dirs/runtime 908s ok 4 /utils/appname 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/prgname-thread-safety/.dirs/runtime 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 908s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 908s ok 5 /utils/prgname-thread-safety 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/tmpdir/.dirs/runtime 908s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 908s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/tmpdir: No such file or directory 908s ok 6 /utils/tmpdir 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/basic_bits/.dirs/runtime 908s ok 7 /utils/basic_bits 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/bits/.dirs/runtime 908s ok 8 /utils/bits 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/swap/.dirs/runtime 908s ok 9 /utils/swap 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/find-program/.dirs/runtime 908s ok 10 /utils/find-program 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/find-program-for-path/.dirs/runtime 908s ok 11 /utils/find-program-for-path 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/debug/.dirs/runtime 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/debug: No such file or directory 908s ok 12 /utils/debug 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/codeset/.dirs/runtime 908s ok 13 /utils/codeset 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/codeset2/.dirs/runtime 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/codeset2: No such file or directory 908s ok 14 /utils/codeset2 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/console-charset/.dirs/runtime 908s ok 15 /utils/console-charset 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/gettext/.dirs/runtime 908s ok 16 /utils/gettext 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/username/.dirs/runtime 908s ok 17 /utils/username 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/realname/.dirs/runtime 908s ok 18 /utils/realname 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/hostname/.dirs/runtime 908s ok 19 /utils/hostname 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/os-info/.dirs/runtime 908s # NAME: Ubuntu 908s ok 20 /utils/os-info 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/.dirs/runtime 908s ok 21 /utils/clear-pointer 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer-cast/.dirs/runtime 908s ok 22 /utils/clear-pointer-cast 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/take-pointer/.dirs/runtime 908s ok 23 /utils/take-pointer 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-source/.dirs/runtime 908s ok 24 /utils/clear-source 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/misc-mem/.dirs/runtime 908s ok 25 /utils/misc-mem 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/.dirs/runtime 908s # /utils/aligned-mem summary: Aligned memory allocator 908s # Alignment must not be zero 908s # Alignment must be a power of two 908s # Alignment must be a multiple of sizeof(void*) 908s ok 26 /utils/aligned-mem 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/free-sized/.dirs/runtime 908s # /utils/free-sized summary: Check that g_free_sized() works 908s ok 27 /utils/free-sized 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/nullify/.dirs/runtime 908s ok 28 /utils/nullify 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/atexit/.dirs/runtime 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/atexit: No such file or directory 908s ok 29 /utils/atexit 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/check-setuid/.dirs/runtime 908s ok 30 /utils/check-setuid 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/int-limits/.dirs/runtime 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 908s ok 31 /utils/int-limits 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-list/.dirs/runtime 908s ok 32 /utils/clear-list 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-slist/.dirs/runtime 908s ok 33 /utils/clear-slist 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/steal-handle-id/.dirs/runtime 908s ok 34 /utils/steal-handle-id 908s # Start of user-special-dirs tests 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/desktop/.dirs/runtime 908s ok 35 /utils/user-special-dirs/desktop 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked/.dirs/runtime 908s # /utils/user-special-dirs/load-unlocked summary: Tests error and corner cases of user-dirs.dirs content. 908s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/4800 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/load-unlocked: No such file or directory 908s ok 36 /utils/user-special-dirs/load-unlocked 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks/.dirs/runtime 908s # /utils/user-special-dirs/reload-leaks summary: Tests that old user special dirs values are deliberately leaked on reload. 908s Unable to clean up temporary directory /tmp/test_utils-c-99_1XP7J3/utils/user-special-dirs/reload-leaks: No such file or directory 908s ok 37 /utils/user-special-dirs/reload-leaks 908s # End of user-special-dirs tests 908s # Start of clear-pointer tests 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/clear-pointer/side-effects/.dirs/runtime 908s ok 38 /utils/clear-pointer/side-effects 908s # End of clear-pointer tests 908s # Start of aligned-mem tests 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/system-data2 908s ok - glib/utils-c-99.test 908s # Running test: glib/tls-certificate.test 908s ok - glib/tls-certificate.test 908s # Running test: glib/bindinggroup.test 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/alignment/.dirs/runtime 908s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 908s ok 39 /utils/aligned-mem/alignment 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/zeroed/.dirs/runtime 908s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 908s ok 40 /utils/aligned-mem/zeroed 908s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/home 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/cache 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/system-config1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/system-config2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/config 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/system-data1:/tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/system-data2 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/data 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/state 908s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-c-99_1XP7J3/utils/aligned-mem/free-sized/.dirs/runtime 908s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 908s ok 41 /utils/aligned-mem/free-sized 908s # Start of subprocess tests 908s # End of subprocess tests 908s # End of aligned-mem tests 908s # End of utils tests 908s TAP version 14 908s # random seed: R02Sc1d1885a937829fe713593bd1afc5346 908s 1..19 908s # Start of tls-certificate tests 908s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ‘gio-tls-backend’ 908s ok 1 /tls-certificate/pem-parser 908s ok 2 /tls-certificate/pem-parser-handles-chain 908s ok 3 /tls-certificate/from_file 908s ok 4 /tls-certificate/from_files 908s ok 5 /tls-certificate/from_files_crlf 908s ok 6 /tls-certificate/from_files_pkcs8 908s ok 7 /tls-certificate/from_files_pkcs8enc 908s ok 8 /tls-certificate/list_from_file 908s ok 9 /tls-certificate/pkcs11-uri 908s ok 10 /tls-certificate/pkcs11-uri-unsupported 908s ok 11 /tls-certificate/from_pkcs12 908s ok 12 /tls-certificate/from_pkcs12_file 908s ok 13 /tls-certificate/not-valid-before 908s ok 14 /tls-certificate/not-valid-after 908s ok 15 /tls-certificate/subject-name 908s ok 16 /tls-certificate/issuer-name 908s ok 17 /tls-certificate/dns-names 908s ok 18 /tls-certificate/ip-addresses 908s ok 19 /tls-certificate/pem-parser-no-sentinel 908s # End of tls-certificate tests 908s TAP version 14 908s # random seed: R02S3878abdd0dc898c62fa519d4ae6e51bc 908s 1..11 908s # Start of GObject tests 908s # Start of BindingGroup tests 908s ok 1 /GObject/BindingGroup/invalid 908s ok 2 /GObject/BindingGroup/default 908s ok 3 /GObject/BindingGroup/bidirectional 908s ok 4 /GObject/BindingGroup/transform 908s ok 5 /GObject/BindingGroup/transform-closures 908s ok 6 /GObject/BindingGroup/same-object 908s ok 7 /GObject/BindingGroup/weak-ref-source 908s ok 8 /GObject/BindingGroup/weak-ref-target 908s ok 9 /GObject/BindingGroup/properties 908s ok 10 /GObject/BindingGroup/weak-notify-no-bindings 908s ok 11 /GObject/BindingGroup/empty-closures 908s # End of BindingGroup tests 908s # End of GObject tests 908s ok - glib/bindinggroup.test 908s # Running test: glib/portal-support-none.test 908s TAP version 14 908s # random seed: R02Sb050ffdff95489a1ee7d8f13914bae15 908s 1..1 908s # Start of portal-support tests 908s ok 1 /portal-support/none 908s # End of portal-support tests 908s ok - glib/portal-support-none.test 908s # Running test: glib/refstring.test 908s TAP version 14 908s # random seed: R02S283e5eceb8a32c8085ff9c11f1e1324a 908s 1..8 908s # Start of refstring tests 908s # s = 'hello, world' (0x77d7c7282c0) 908s ok 1 /refstring/base 908s ok 2 /refstring/length 908s ok 3 /refstring/length-auto 908s ok 4 /refstring/length-nuls 908s # s = 'hello, world' (0x77d7c728160) 908s # p = s = 'hello, world' (0x77d7c728160) 908s # releasing p[0x77d7c728160] ('hello, world') 908s # p = 'goodbye, world' (0x77d7c7282c0) 908s # releasing p[0x77d7c7282c0] ('goodbye, world') 908s # releasing s[0x77d7c728160] ('hello, world') 908s ok 5 /refstring/intern 908s # /refstring/hash_equal summary: Test g_ref_string_equal() in GHashTable 908s ok 6 /refstring/hash_equal 908s # /refstring/equal summary: Test g_ref_string_equal() standalone 908s ok 7 /refstring/equal 909s # Executing: glib/refstring.test 910s ok 8 /refstring/intern-thread-safety 910s # slow test /refstring/intern-thread-safety executed in 1.70 secs 910s # End of refstring tests 910s ok - glib/refstring.test 910s # Running test: glib/macros-c-99.test 910s ok - glib/macros-c-99.test 910s # Running test: glib/gdbus-addresses.test 910s TAP version 14 910s # random seed: R02Seedef2088750110842a8a0213cbb68ad 910s 1..4 910s # Start of C tests 910s ok 1 /C/standard-99 910s # End of C tests 910s # Start of alignof tests 910s ok 2 /alignof/fallback 910s # End of alignof tests 910s # Start of assert tests 910s ok 3 /assert/static 910s # End of assert tests 910s # Start of struct tests 910s ok 4 /struct/sizeof_member 910s # End of struct tests 910s ok - glib/gdbus-addresses.test 910s # Running test: glib/memory-monitor.test 910s TAP version 14 910s # random seed: R02S2a6d86112afae3ace6a7fdedcc43cb67 910s 1..9 910s # Start of gdbus tests 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/empty-address/.dirs/runtime 910s ok 1 /gdbus/empty-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unsupported-address/.dirs/runtime 910s ok 2 /gdbus/unsupported-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/address-parsing/.dirs/runtime 910s ok 3 /gdbus/address-parsing 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/unix-address/.dirs/runtime 910s ok 4 /gdbus/unix-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/nonce-tcp-address/.dirs/runtime 910s ok 5 /gdbus/nonce-tcp-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/tcp-address/.dirs/runtime 910s ok 6 /gdbus/tcp-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/autolaunch-address/.dirs/runtime 910s ok 7 /gdbus/autolaunch-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/mixed-address/.dirs/runtime 910s ok 8 /gdbus/mixed-address 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/system-config1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/system-data1:/tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_4I7KK3/gdbus/escape-address/.dirs/runtime 910s ok 9 /gdbus/escape-address 910s # End of gdbus tests 910s ok - glib/memory-monitor.test 910s # Running test: glib/spawn-test.test 910s ok - glib/spawn-test.test 910s # Running test: glib/gdbus-address-get-session.test 910s TAP version 14 910s # random seed: R02Sc689ad3b5bb5cfa72435c007350ece17 910s 1..1 910s # Start of memory-monitor tests 910s # GLib-GIO-DEBUG: Failed to initialize portal (GMemoryMonitorPortal) for gio-memory-monitor: Not using portals 910s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dbus (GMemoryMonitorDBus) for ‘gio-memory-monitor’ 910s ok 1 /memory-monitor/default 910s # End of memory-monitor tests 910s TAP version 14 910s # random seed: R02S9c5c759bec70d18a1a1842515f11a88c 910s 1..2 910s # Start of spawn tests 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/system-config1:/tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/system-data1:/tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_spawn-test_62AMK3/spawn/basics/.dirs/runtime 910s ok 1 /spawn/basics 910s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/home 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/cache 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/system-config1:/tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/system-config2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/config 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/system-data1:/tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/system-data2 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/data 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/state 910s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_spawn-test_62AMK3/spawn/stdio-overwrite/.dirs/runtime 910s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/16 910s # Fetching GSpawn result output and error output with stdin open, stdout open, stderr open 910s # Fetching GSpawn result output and error output with stdin open, stdout open, stderr already closed 910s # Fetching GSpawn result output and error output with stdin open, stdout already closed, stderr open 910s # Fetching GSpawn result output and error output with stdin open, stdout already closed, stderr already closed 910s # Fetching GSpawn result output and error output with stdin already closed, stdout open, stderr open 910s # Fetching GSpawn result output and error output with stdin already closed, stdout open, stderr already closed 910s # Fetching GSpawn result output and error output with stdin already closed, stdout already closed, stderr open 910s # Fetching GSpawn result output and error output with stdin already closed, stdout already closed, stderr already closed 910s # Fetching GSpawn result output with stdin open, stdout open, stderr open 910s # Fetching GSpawn result output with stdin open, stdout open, stderr already closed 910s # Fetching GSpawn result output with stdin open, stdout already closed, stderr open 910s # Fetching GSpawn result output with stdin open, stdout already closed, stderr already closed 910s # Fetching GSpawn result output with stdin already closed, stdout open, stderr open 910s # Fetching GSpawn result output with stdin already closed, stdout open, stderr already closed 910s # Fetching GSpawn result output with stdin already closed, stdout already closed, stderr open 910s # Fetching GSpawn result output with stdin already closed, stdout already closed, stderr already closed 910s # Fetching GSpawn result error output with stdin open, stdout open, stderr open 910s # Fetching GSpawn result error output with stdin open, stdout open, stderr already closed 910s # Fetching GSpawn result error output with stdin open, stdout already closed, stderr open 910s # Fetching GSpawn result error output with stdin open, stdout already closed, stderr already closed 910s # Fetching GSpawn result error output with stdin already closed, stdout open, stderr open 910s # Fetching GSpawn result error output with stdin already closed, stdout open, stderr already closed 910s # Fetching GSpawn result error output with stdin already closed, stdout already closed, stderr open 910s # Fetching GSpawn result error output with stdin already closed, stdout already closed, stderr already closed 910s # Fetching GSpawn result with stdin open, stdout open, stderr open 910s # Fetching GSpawn result with stdin open, stdout open, stderr already closed 910s # Fetching GSpawn result with stdin open, stdout already closed, stderr open 910s # Fetching GSpawn result with stdin open, stdout already closed, stderr already closed 910s # Fetching GSpawn result with stdin already closed, stdout open, stderr open 910s # Fetching GSpawn result with stdin already closed, stdout open, stderr already closed 910s # Fetching GSpawn result with stdin already closed, stdout already closed, stderr open 910s # Fetching GSpawn result with stdin already closed, stdout already closed, stderr already closed 910s ok 2 /spawn/stdio-overwrite 910s # End of spawn tests 910s TAP version 14 910s # random seed: R02S1314354dbf80acf8441b38a36ace788c 910s 1..2 910s # Start of gdbus tests 910s ok 1 /gdbus/x11-autolaunch 910s ok 2 /gdbus/xdg-runtime 910s # End of gdbus tests 910s TAP version 14 910s # random seed: R02S3eec6527ac83c22b8a6bce6d74196c37 910s 1..4 910s # Start of unix-mounts tests 910s ok 1 /unix-mounts/is-system-fs-type 910s ok 2 /unix-mounts/is-system-device-path 910s # /unix-mounts/get-mount-points summary: Basic test of g_unix_mount_points_get_from_file() 910s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 910s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 910s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 910s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 910s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 910s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 910s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 910s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 910s ok 3 /unix-mounts/get-mount-points 910s # /unix-mounts/get-mount-entries summary: Basic test of g_unix_mounts_get_from_file() 910s ok 4 /unix-mounts/get-mount-entries 910s # End of unix-mounts tests 910s ok - glib/gdbus-address-get-session.test 910s # Running test: glib/unix-mounts.test 910s ok - glib/unix-mounts.test 910s # SUMMARY: total=332; passed=331; skipped=1; failed=0; user=272.9s; system=72.4s; maxrss=167936 911s autopkgtest [21:52:58]: test installed-tests: -----------------------] 911s installed-tests PASS 911s autopkgtest [21:52:58]: test installed-tests: - - - - - - - - - - results - - - - - - - - - - 912s autopkgtest [21:52:59]: test closure-refcount: preparing testbed 912s Reading package lists... 912s Building dependency tree... 912s Reading state information... 912s Solving dependencies... 912s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 913s autopkgtest [21:53:00]: test closure-refcount: [----------------------- 913s Running test: glib/closure-refcount.test 913s TAP version 14 913s # random seed: R02S446bd3189affa4c0e62c46cc5cce8443 913s 1..1 913s # Start of closure tests 913s # Init 0xd286ec76db0 913s # Yielding from main thread 913s # Yielding from main thread 913s # Yielding from main thread 913s # Yielding from main thread 913s # Yielding from main thread 913s # Yielding from main thread 913s # Yielding from thread1 913s # Yielding from main thread 913s # Yielding from thread2 913s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from thread2 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from thread1 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from thread1 914s # Yielding from main thread 914s # Yielding from thread2 914s # Yielding from main thread 914s # Yielding from main thread 914s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from thread2 915s # Yielding from thread1 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from thread2 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from thread1 915s # Yielding from main thread 915s # Yielding from main thread 915s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from thread2 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from thread1 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from thread2 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from thread1 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from main thread 916s # Yielding from thread2 916s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from thread1 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from thread2 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from thread1 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from main thread 917s # Yielding from thread2 917s # Yielding from main thread 917s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from thread1 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from thread2 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from thread1 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from thread2 918s # Yielding from main thread 918s Executing: glib/closure-refcount.test 918s # Yielding from thread1 918s # Yielding from main thread 918s # Yielding from main thread 918s # Yielding from main thread 919s # Stopping 919s # Stopped 919s ok 1 /closure/refcount 919s # slow test /closure/refcount executed in 5.58 secs 919s # End of closure tests 919s PASS: glib/closure-refcount.test 919s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=11.1s; system=0.0s; maxrss=4096 919s autopkgtest [21:53:06]: test closure-refcount: -----------------------] 919s autopkgtest [21:53:06]: test closure-refcount: - - - - - - - - - - results - - - - - - - - - - 919s closure-refcount PASS 920s autopkgtest [21:53:07]: test debugcontroller: preparing testbed 920s Reading package lists... 920s Building dependency tree... 920s Reading state information... 920s Solving dependencies... 920s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 921s autopkgtest [21:53:08]: test debugcontroller: [----------------------- 921s Running test: glib/debugcontroller.test 921s TAP version 14 921s # random seed: R02S9844b4a474b836e572df1ee3b1f6a1d9 921s 1..3 921s # Start of debug-controller tests 921s # Start of dbus tests 921s # /debug-controller/dbus/basic summary: Smoketest for construction and setting of a #GDebugControllerDBus. 921s # GLib-GIO-DEBUG: Debug output enabled 921s # GLib-GIO-DEBUG: Debug output disabled 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s ok 1 /debug-controller/dbus/basic 921s # /debug-controller/dbus/duplicate summary: Test that creating a second #GDebugControllerDBus on the same D-Bus connection fails. 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s ok 2 /debug-controller/dbus/duplicate 921s # /debug-controller/dbus/properties summary: Test getting and setting properties on a #GDebugControllerDBus. 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 921s # GLib-GIO-DEBUG: Debug output enabled 921s # GLib-GIO-DEBUG: Debug output disabled 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 921s ok 3 /debug-controller/dbus/properties 921s # End of dbus tests 921s # End of debug-controller tests 921s PASS: glib/debugcontroller.test 921s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=10240 921s autopkgtest [21:53:08]: test debugcontroller: -----------------------] 922s debugcontroller PASS 922s autopkgtest [21:53:09]: test debugcontroller: - - - - - - - - - - results - - - - - - - - - - 922s autopkgtest [21:53:09]: test gdbus-server-auth: preparing testbed 922s Reading package lists... 922s Building dependency tree... 922s Reading state information... 923s Solving dependencies... 923s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 923s autopkgtest [21:53:10]: test gdbus-server-auth: [----------------------- 924s Running test: glib/gdbus-server-auth.test 924s TAP version 14 924s # random seed: R02S7709e3a963a82901d66024fd45960031 924s 1..9 924s # Start of gdbus tests 924s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/home 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/cache 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/system-config2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/config 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/system-data2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/data 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/state 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/.dirs/runtime 924s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-A239J3 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:false 924s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-A239J3/dbus-c8hbLKrd 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 924s ok 1 /gdbus/server-auth 924s # Start of server-auth tests 924s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/home 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/cache 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/system-config2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/config 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/system-data2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/data 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/state 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/abstract/.dirs/runtime 924s # Testing GDBus server at unix:tmpdir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-AW5AK3 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:true tcp:false 924s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-AW5AK3/dbus-4tGkPc5n 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 924s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 924s ok 2 /gdbus/server-auth/abstract 924s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/home 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/cache 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/system-config2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/config 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/system-data2 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/data 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/state 924s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/tcp/.dirs/runtime 924s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:true 924s # Connectable address: tcp:host=127.0.0.1,port=35861 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 924s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 924s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 924s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 924s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 924s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 924s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 925s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 925s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 925s ok 3 /gdbus/server-auth/tcp 925s # slow test /gdbus/server-auth/tcp executed in 0.91 secs 925s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/home 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/cache 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/system-config2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/config 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/system-data2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/data 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/state 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/.dirs/runtime 925s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-0W0DK3 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:false 925s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-0W0DK3/dbus-BYMhCljX 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 925s ok 4 /gdbus/server-auth/anonymous 925s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/home 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/cache 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/system-config2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/config 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/system-data2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/data 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/state 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/.dirs/runtime 925s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-TYG9J3 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 925s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-TYG9J3/dbus-usUhnXwp 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 925s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 925s ok 5 /gdbus/server-auth/external 925s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/home 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/cache 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/system-config2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/config 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/system-data2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/data 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/state 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/.dirs/runtime 925s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-X5D9J3 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:false 925s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-X5D9J3/dbus-3bHA2mtB 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 925s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 925s ok 6 /gdbus/server-auth/sha1 925s # Start of anonymous tests 925s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/home 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/cache 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/system-config2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/config 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/system-data2 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/data 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/state 925s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/anonymous/tcp/.dirs/runtime 925s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:true 925s # Connectable address: tcp:host=127.0.0.1,port=39491 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 925s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 925s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 925s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 925s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 925s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 926s ok 7 /gdbus/server-auth/anonymous/tcp 926s # slow test /gdbus/server-auth/anonymous/tcp executed in 0.90 secs 926s # End of anonymous tests 926s # Start of external tests 926s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/home 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/cache 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/system-config2 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/config 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/system-data2 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/data 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/state 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/external/require-same-user/.dirs/runtime 926s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-SSCAK3 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 926s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_5AY9J3/gdbus-server-auth-SSCAK3/dbus-RSo7Er1f 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 40616 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 926s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=40616,uid=1000,gid=1000 926s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 40616 926s ok 8 /gdbus/server-auth/external/require-same-user 926s # End of external tests 926s # Start of sha1 tests 926s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/home 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/cache 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/system-config2 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/config 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/system-data2 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/data 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/state 926s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_5AY9J3/gdbus/server-auth/sha1/tcp/.dirs/runtime 926s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:true 926s # Connectable address: tcp:host=127.0.0.1,port=41209 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 926s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 926s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 926s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 926s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 926s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 926s ok 9 /gdbus/server-auth/sha1/tcp 926s # slow test /gdbus/server-auth/sha1/tcp executed in 0.90 secs 926s # End of sha1 tests 926s # End of server-auth tests 926s # End of gdbus tests 926s PASS: glib/gdbus-server-auth.test 926s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.1s; system=0.1s; maxrss=8192 927s autopkgtest [21:53:14]: test gdbus-server-auth: -----------------------] 927s autopkgtest [21:53:14]: test gdbus-server-auth: - - - - - - - - - - results - - - - - - - - - - 927s gdbus-server-auth PASS 928s autopkgtest [21:53:15]: test gdbus-threading: preparing testbed 928s Reading package lists... 928s Building dependency tree... 928s Reading state information... 928s Solving dependencies... 928s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 929s autopkgtest [21:53:16]: test gdbus-threading: [----------------------- 929s Running test: glib/gdbus-threading.test 929s TAP version 14 929s # random seed: R02S250521511e42fee07b1549c529eeba61 929s 1..3 929s # Start of gdbus tests 929s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/home 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/cache 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/system-config1:/tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/system-config2 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/config 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/system-data1:/tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/system-data2 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/data 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/state 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MIALK3/gdbus/delivery-in-thread/.dirs/runtime 929s ok 1 /gdbus/delivery-in-thread 929s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/home 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/cache 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/system-config1:/tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/system-config2 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/config 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/system-data1:/tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/system-data2 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/data 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/state 929s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MIALK3/gdbus/method-calls-in-thread/.dirs/runtime 930s # GLib-GIO-DEBUG: refcount of 0x156091be420 is not right (2 rather than 1) in test_method_calls_in_thread(), sleeping 930s ok 2 /gdbus/method-calls-in-thread 930s # slow test /gdbus/method-calls-in-thread executed in 0.86 secs 930s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/home 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/cache 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/system-config1:/tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/system-config2 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/config 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/system-data1:/tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/system-data2 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/data 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/state 930s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MIALK3/gdbus/threaded-singleton/.dirs/runtime 931s ok 3 /gdbus/threaded-singleton 931s # slow test /gdbus/threaded-singleton executed in 1.08 secs 931s # End of gdbus tests 931s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 931s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 931s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 931s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 931s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 931s PASS: glib/gdbus-threading.test 931s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.5s; system=0.2s; maxrss=8192 931s autopkgtest [21:53:18]: test gdbus-threading: -----------------------] 932s gdbus-threading PASS 932s autopkgtest [21:53:19]: test gdbus-threading: - - - - - - - - - - results - - - - - - - - - - 932s autopkgtest [21:53:19]: test gmenumodel: preparing testbed 932s Reading package lists... 933s Building dependency tree... 933s Reading state information... 933s Solving dependencies... 933s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 933s autopkgtest [21:53:20]: test gmenumodel: [----------------------- 934s Running test: glib/gmenumodel.test 934s TAP version 14 934s # random seed: R02S819c154499822689ab560744efb8648c 934s 1..15 934s # Start of gmenu tests 935s ok 1 /gmenu/equality 935s # slow test /gmenu/equality executed in 1.43 secs 937s ok 2 /gmenu/random 937s # slow test /gmenu/random executed in 1.95 secs 937s ok 3 /gmenu/attributes 937s ok 4 /gmenu/links 937s ok 5 /gmenu/mutable 937s ok 6 /gmenu/convenience 937s ok 7 /gmenu/menuitem 937s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/861 937s ok 8 /gmenu/input-validation 937s # Start of dbus tests 938s ok 9 /gmenu/dbus/roundtrip 938s # slow test /gmenu/dbus/roundtrip executed in 1.02 secs 939s ok 10 /gmenu/dbus/subscriptions 939s Executing: glib/gmenumodel.test 940s ok 11 /gmenu/dbus/threaded 940s # slow test /gmenu/dbus/threaded executed in 1.43 secs 940s # Start of peer tests 941s ok 12 /gmenu/dbus/peer/roundtrip 941s # slow test /gmenu/dbus/peer/roundtrip executed in 1.01 secs 941s ok 13 /gmenu/dbus/peer/subscriptions 941s # End of peer tests 941s # Start of export tests 941s # /gmenu/dbus/export/error-handling summary: Test that error handling of menu model export failure works 941s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 941s ok 14 /gmenu/dbus/export/error-handling 941s # End of export tests 941s # End of dbus tests 941s # Start of attributes tests 941s ok 15 /gmenu/attributes/iterate 941s # End of attributes tests 941s # End of gmenu tests 941s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 941s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 941s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 941s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 941s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 941s PASS: glib/gmenumodel.test 941s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=5.9s; system=0.2s; maxrss=28672 942s autopkgtest [21:53:29]: test gmenumodel: -----------------------] 942s autopkgtest [21:53:29]: test gmenumodel: - - - - - - - - - - results - - - - - - - - - - 942s gmenumodel PASS 942s autopkgtest [21:53:29]: test mainloop: preparing testbed 943s Reading package lists... 943s Building dependency tree... 943s Reading state information... 943s Solving dependencies... 943s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 944s autopkgtest [21:53:31]: test mainloop: [----------------------- 944s Running test: glib/mainloop.test 944s TAP version 14 944s # random seed: R02Sc948aa1189d438a0214b705c65a56493 944s 1..47 944s # Start of maincontext tests 944s ok 1 /maincontext/basic 944s # Add same-priority sources: 40 944s # Find each source: 19 944s # Remove in random order: 57 944s ok 2 /maincontext/nsources_same_priority 944s # Add different-priority sources: 47 944s # Find each source: 20 944s # Remove in random order: 61 944s ok 3 /maincontext/nsources_different_priority 944s # Add sources from threads: 109 944s # Remove sources from threads: 105 944s ok 4 /maincontext/nsources_threadpool 944s ok 5 /maincontext/source_finalization 944s # /maincontext/idle-once summary: Test g_idle_add_once() works 944s ok 6 /maincontext/idle-once 944s # /maincontext/timeout-once summary: Test g_timeout_add_once() works 945s ok 7 /maincontext/timeout-once 945s # /maincontext/context-ref-in-source-callbackfuncs-unref summary: Tests if calling GSource API in GSourceCallbackFuncs.unref does not deadlock attempting to retrieve the relevant GMainContext. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/3725 945s ok 8 /maincontext/context-ref-in-source-callbackfuncs-unref 945s # Start of source_finalization_from_source tests 945s # /maincontext/source_finalization_from_source/0 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 9 /maincontext/source_finalization_from_source/0 945s # /maincontext/source_finalization_from_source/1 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 10 /maincontext/source_finalization_from_source/1 945s # /maincontext/source_finalization_from_source/2 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 11 /maincontext/source_finalization_from_source/2 945s # /maincontext/source_finalization_from_source/3 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 12 /maincontext/source_finalization_from_source/3 945s # /maincontext/source_finalization_from_source/4 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 13 /maincontext/source_finalization_from_source/4 945s # /maincontext/source_finalization_from_source/5 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 14 /maincontext/source_finalization_from_source/5 945s # /maincontext/source_finalization_from_source/6 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 15 /maincontext/source_finalization_from_source/6 945s # /maincontext/source_finalization_from_source/7 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 16 /maincontext/source_finalization_from_source/7 945s # /maincontext/source_finalization_from_source/8 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 17 /maincontext/source_finalization_from_source/8 945s # /maincontext/source_finalization_from_source/9 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 945s ok 18 /maincontext/source_finalization_from_source/9 945s # End of source_finalization_from_source tests 945s # Start of source_finalization_from_dispatch tests 945s # /maincontext/source_finalization_from_dispatch/0 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 945s ok 19 /maincontext/source_finalization_from_dispatch/0 945s # /maincontext/source_finalization_from_dispatch/1 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 945s ok 20 /maincontext/source_finalization_from_dispatch/1 945s # /maincontext/source_finalization_from_dispatch/2 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 945s ok 21 /maincontext/source_finalization_from_dispatch/2 945s # End of source_finalization_from_dispatch tests 945s # End of maincontext tests 945s # Start of mainloop tests 945s ok 22 /mainloop/basic 945s ok 23 /mainloop/timeouts # SKIP Not running timing heavy test 945s ok 24 /mainloop/priorities 945s ok 25 /mainloop/invoke 945s # slow test /mainloop/invoke executed in 0.50 secs 946s ok 26 /mainloop/child_sources 946s # slow test /mainloop/child_sources executed in 1.18 secs 948s ok 27 /mainloop/recursive_child_sources 948s # slow test /mainloop/recursive_child_sources executed in 2.15 secs 948s ok 28 /mainloop/recursive_loop_child_sources 948s ok 29 /mainloop/swapping_child_sources 948s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=701283 948s ok 30 /mainloop/blocked_child_sources 949s Executing: glib/mainloop.test 949s ok 31 /mainloop/source_time 949s # slow test /mainloop/source_time executed in 1.00 secs 949s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=687098 949s ok 32 /mainloop/overflow 950s ok 33 /mainloop/ready-time 950s # slow test /mainloop/ready-time executed in 0.50 secs 950s ok 34 /mainloop/wakeup 950s ok 35 /mainloop/remove-invalid 950s ok 36 /mainloop/unref-while-pending 951s ok 37 /mainloop/unix-fd 951s # slow test /mainloop/unix-fd executed in 1.47 secs 951s ok 38 /mainloop/unix-fd-source 951s ok 39 /mainloop/source-unix-fd-api 952s ok 40 /mainloop/wait 952s ok 41 /mainloop/unix-file-poll 952s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1592 952s ok 42 /mainloop/unix-fd-priority 952s ok 43 /mainloop/nfds 952s ok 44 /mainloop/steal-fd 953s ok 45 /mainloop/simultaneous-source-context-destruction 953s # slow test /mainloop/simultaneous-source-context-destruction executed in 1.56 secs 953s # Start of ownerless-polling tests 953s ok 46 /mainloop/ownerless-polling/attach-first 953s ok 47 /mainloop/ownerless-polling/pop-first 953s # End of ownerless-polling tests 953s # End of mainloop tests 953s PASS: glib/mainloop.test 953s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=1.6s; system=2.8s; maxrss=30720 954s autopkgtest [21:53:41]: test mainloop: -----------------------] 954s mainloop PASS 954s autopkgtest [21:53:41]: test mainloop: - - - - - - - - - - results - - - - - - - - - - 954s autopkgtest [21:53:41]: test memory-monitor-dbus: preparing testbed 955s Reading package lists... 955s Building dependency tree... 955s Reading state information... 955s Solving dependencies... 955s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 956s autopkgtest [21:53:43]: test memory-monitor-dbus: [----------------------- 956s Running test: glib/memory-monitor-dbus.test 956s TAP version 13 956s ok 1 __main__.TestLowMemoryMonitor.test_low_memory_warning_signal 956s # Received memory warning signal, level 0 956s # Received memory warning signal, level 100 956s # Received memory warning signal, level 255 956s 1..1 956s PASS: glib/memory-monitor-dbus.test 956s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.2s; system=0.0s; maxrss=38976 956s autopkgtest [21:53:43]: test memory-monitor-dbus: -----------------------] 957s autopkgtest [21:53:44]: test memory-monitor-dbus: - - - - - - - - - - results - - - - - - - - - - 957s memory-monitor-dbus PASS 957s autopkgtest [21:53:44]: test socket: preparing testbed 957s Reading package lists... 957s Building dependency tree... 957s Reading state information... 958s Solving dependencies... 958s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 958s autopkgtest [21:53:45]: test socket: [----------------------- 958s Running test: glib/socket.test 958s TAP version 14 958s # random seed: R02S8a1cac6bd4d39a31ffa1e84b8e9c0d87 958s 1..30 958s # Start of socket tests 959s ok 1 /socket/ipv4_sync 959s # slow test /socket/ipv4_sync executed in 1.00 secs 960s ok 2 /socket/ipv4_async 960s # slow test /socket/ipv4_async executed in 1.00 secs 960s ok 3 /socket/ipv6_sync 960s ok 4 /socket/ipv6_async 960s ok 5 /socket/ipv6_v4mapped 961s ok 6 /socket/close_graceful 961s # slow test /socket/close_graceful executed in 1.00 secs 961s ok 7 /socket/timed_wait # SKIP Not running timing heavy test 961s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=741707 961s ok 8 /socket/fd_reuse 961s ok 9 /socket/address 961s ok 10 /socket/unix-from-fd 961s ok 11 /socket/unix-connection 961s ok 12 /socket/unix-connection-ancillary-data 961s ok 13 /socket/source-postmortem 961s ok 14 /socket/read_write 961s ok 15 /socket/read_writev 962s # /socket/receive_bytes summary: Test basic functionality of g_socket_receive_bytes() 962s ok 16 /socket/receive_bytes 962s # /socket/receive_bytes_from summary: Test basic functionality of g_socket_receive_bytes_from() 962s ok 17 /socket/receive_bytes_from 962s # Start of ipv4_sync tests 962s ok 18 /socket/ipv4_sync/datagram 962s # Start of datagram tests 963s ok 19 /socket/ipv4_sync/datagram/timeouts 963s # slow test /socket/ipv4_sync/datagram/timeouts executed in 1.10 secs 963s # End of datagram tests 963s # End of ipv4_sync tests 963s # Start of ipv6_sync tests 963s ok 20 /socket/ipv6_sync/datagram 963s # Start of datagram tests 963s Executing: glib/socket.test 964s ok 21 /socket/ipv6_sync/datagram/timeouts 964s # slow test /socket/ipv6_sync/datagram/timeouts executed in 1.10 secs 964s # End of datagram tests 964s # End of ipv6_sync tests 964s # Start of reuse tests 964s ok 22 /socket/reuse/tcp 964s ok 23 /socket/reuse/udp 964s # End of reuse tests 964s # Start of get_available tests 964s ok 24 /socket/get_available/datagram 964s ok 25 /socket/get_available/stream 964s # End of get_available tests 964s # Start of credentials tests 964s # Supported on this OS: GCredentials:linux-ucred:pid=0 964s ok 26 /socket/credentials/tcp_client 964s # Supported on this OS: GCredentials:linux-ucred:pid=0 964s ok 27 /socket/credentials/tcp_server 964s # Supported on this OS: GCredentials:linux-ucred:pid=66613,uid=1000,gid=1000 964s ok 28 /socket/credentials/unix_socketpair 964s # End of credentials tests 964s # Start of accept tests 964s # /socket/accept/cancelled summary: Calling g_socket_accept() with a cancelled cancellable should return immediately regardless of whether the socket is blocking 964s ok 29 /socket/accept/cancelled 964s # End of accept tests 964s # Start of connect tests 964s # /socket/connect/cancelled summary: Calling g_socket_connect() with a cancelled cancellable should return immediately regardless of whether the socket is blocking 964s ok 30 /socket/connect/cancelled 964s # End of connect tests 964s # End of socket tests 964s PASS: glib/socket.test 964s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=8192 964s autopkgtest [21:53:51]: test socket: -----------------------] 965s socket PASS 965s autopkgtest [21:53:52]: test socket: - - - - - - - - - - results - - - - - - - - - - 965s autopkgtest [21:53:52]: test testfilemonitor: preparing testbed 965s Reading package lists... 965s Building dependency tree... 965s Reading state information... 965s Solving dependencies... 965s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 966s autopkgtest [21:53:53]: test testfilemonitor: [----------------------- 966s Running test: glib/testfilemonitor.test 966s TAP version 14 966s # random seed: R02Sdb9ccaa1f8e9b92aa87b18cecd8091dd 966s 1..8 966s # Start of monitor tests 966s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 966s # Using temporary directory: /tmp/gio-test-testfilemonitor_8XU6J3 966s # Using GFileMonitor GInotifyFileMonitor 968s ok 1 /monitor/atomic-replace 968s # slow test /monitor/atomic-replace executed in 2.00 secs 968s # Using temporary directory: /tmp/gio-test-testfilemonitor_NIS6J3 968s # Using GFileMonitor GInotifyFileMonitor 971s ok 2 /monitor/file-changes 971s # slow test /monitor/file-changes executed in 2.50 secs 971s # Using temporary directory: /tmp/gio-test-testfilemonitor_JQMBK3 971s # Using GFileMonitor GInotifyFileMonitor 971s Executing: glib/testfilemonitor.test 974s ok 3 /monitor/dir-monitor 974s # slow test /monitor/dir-monitor executed in 3.50 secs 974s # Using temporary directory: /tmp/gio-test-testfilemonitor_L8L6J3 974s # Using GFileMonitor GInotifyFileMonitor 976s Executing: glib/testfilemonitor.test 981s Executing: glib/testfilemonitor.test 986s Executing: glib/testfilemonitor.test 991s Executing: glib/testfilemonitor.test 996s Executing: glib/testfilemonitor.test 999s ok 4 /monitor/dir-not-existent 999s # slow test /monitor/dir-not-existent executed in 25.02 secs 999s # Using temporary directory: /tmp/gio-test-testfilemonitor_N3I7J3 999s # Using GFileMonitor 0 GInotifyFileMonitor 999s # Using GFileMonitor 1 GInotifyFileMonitor 1001s ok 5 /monitor/cross-dir-moves 1001s # slow test /monitor/cross-dir-moves executed in 2.00 secs 1001s # Using temporary directory: /tmp/gio-test-testfilemonitor_G3L7J3 1001s # /monitor/finalize-in-callback summary: Test that finalization of a GFileMonitor in one of its callbacks doesn’t cause a deadlock. 1001s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1941 1001s ok 6 /monitor/finalize-in-callback 1001s # Using temporary directory: /tmp/gio-test-testfilemonitor_YMB7J3 1001s # /monitor/root summary: Test that GFileMonitor can monitor the root directory. 1001s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3241 1001s ok 7 /monitor/root 1001s # Start of file tests 1001s # Using temporary directory: /tmp/gio-test-testfilemonitor_EPB7J3 1001s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=755721 1001s # Running with hard link tests 1001s # Using GFileMonitor GInotifyFileMonitor 1001s Executing: glib/testfilemonitor.test 1005s # Event 0 at expected index 7 skipped because it is marked as optional 1005s # Event 2 at expected index 11 skipped because it is marked as optional 1005s ok 8 /monitor/file/hard-links 1005s # slow test /monitor/file/hard-links executed in 3.50 secs 1005s # End of file tests 1005s # End of monitor tests 1005s PASS: glib/testfilemonitor.test 1005s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=8192 1005s autopkgtest [21:54:32]: test testfilemonitor: -----------------------] 1005s testfilemonitor PASS 1005s autopkgtest [21:54:32]: test testfilemonitor: - - - - - - - - - - results - - - - - - - - - - 1006s autopkgtest [21:54:33]: test thread-pool-slow: preparing testbed 1006s Reading package lists... 1006s Building dependency tree... 1006s Reading state information... 1006s Solving dependencies... 1006s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1007s autopkgtest [21:54:34]: test thread-pool-slow: [----------------------- 1007s Running test: glib/thread-pool-slow.test 1007s TAP version 14 1007s # random seed: R02Sc3cf5e4b64b3599666866507d0e4fd56 1007s 1..7 1007s # Start of threadpool tests 1007s ok 1 /threadpool/functions 1008s ok 2 /threadpool/stop-unused 1008s # slow test /threadpool/stop-unused executed in 0.51 secs 1008s ok 3 /threadpool/pools 1008s # [unsorted] ===> pushed new thread with id:13, number of threads:1, unprocessed:1 1008s # [unsorted] ===> pushed new thread with id:68, number of threads:2, unprocessed:2 1008s # [unsorted] ===> pushed new thread with id:51, number of threads:3, unprocessed:3 1008s # [unsorted] ===> pushed new thread with id:72, number of threads:4, unprocessed:4 1008s # [unsorted] ===> pushed new thread with id:22, number of threads:5, unprocessed:5 1008s # [unsorted] ===> pushed new thread with id:92, number of threads:6, unprocessed:6 1008s # [unsorted] ===> pushed new thread with id:71, number of threads:7, unprocessed:7 1008s # [unsorted] ===> pushed new thread with id:40, number of threads:8, unprocessed:8 1008s # [unsorted] ===> pushed new thread with id:77, number of threads:9, unprocessed:9 1008s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:2 1008s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:3 1008s # [unsorted] ===> pushed new thread with id:27, number of threads:10, unprocessed:2 1008s # [unsorted] ===> pushed new thread with id:95, number of threads:10, unprocessed:3 1008s # [unsorted] ===> pushed new thread with id:32, number of threads:10, unprocessed:4 1008s # [unsorted] ===> pushed new thread with id:74, number of threads:10, unprocessed:5 1008s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:6 1008s # [unsorted] ===> pushed new thread with id:93, number of threads:10, unprocessed:7 1008s # [unsorted] ===> pushed new thread with id:17, number of threads:10, unprocessed:8 1008s # [unsorted] ===> pushed new thread with id:73, number of threads:10, unprocessed:9 1008s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:10 1008s # [unsorted] ===> pushed new thread with id:17, number of threads:10, unprocessed:11 1008s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:12 1008s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:13 1008s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:14 1008s # [unsorted] ===> pushed new thread with id:95, number of threads:10, unprocessed:15 1008s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:16 1008s # [unsorted] ===> pushed new thread with id:77, number of threads:10, unprocessed:17 1008s # [unsorted] ===> pushed new thread with id:4, number of threads:10, unprocessed:18 1008s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:19 1008s # [unsorted] ===> pushed new thread with id:52, number of threads:10, unprocessed:20 1008s # [unsorted] ===> pushed new thread with id:53, number of threads:10, unprocessed:21 1008s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:22 1008s # [unsorted] ===> pushed new thread with id:47, number of threads:10, unprocessed:23 1008s # [unsorted] ===> pushed new thread with id:3, number of threads:10, unprocessed:24 1008s # [unsorted] ===> pushed new thread with id:75, number of threads:10, unprocessed:25 1008s # [unsorted] ===> pushed new thread with id:100, number of threads:10, unprocessed:26 1008s # [unsorted] ===> pushed new thread with id:71, number of threads:10, unprocessed:27 1008s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:28 1008s # [unsorted] ===> pushed new thread with id:64, number of threads:10, unprocessed:29 1008s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:30 1008s # [unsorted] ===> pushed new thread with id:51, number of threads:10, unprocessed:31 1008s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:32 1008s # [unsorted] ===> pushed new thread with id:61, number of threads:10, unprocessed:33 1008s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:34 1008s # [unsorted] ===> pushed new thread with id:57, number of threads:10, unprocessed:35 1008s # [unsorted] ===> pushed new thread with id:97, number of threads:10, unprocessed:36 1008s # [unsorted] ===> pushed new thread with id:53, number of threads:10, unprocessed:37 1008s # [unsorted] ===> pushed new thread with id:58, number of threads:10, unprocessed:38 1008s # [unsorted] ===> pushed new thread with id:86, number of threads:10, unprocessed:39 1008s # [unsorted] ===> pushed new thread with id:55, number of threads:10, unprocessed:40 1008s # [unsorted] ===> pushed new thread with id:6, number of threads:10, unprocessed:41 1008s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:42 1008s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:43 1008s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:44 1008s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:45 1008s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:46 1008s # [unsorted] ===> pushed new thread with id:2, number of threads:10, unprocessed:47 1008s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:48 1008s # [unsorted] ===> pushed new thread with id:17, number of threads:10, unprocessed:49 1008s # [unsorted] ===> pushed new thread with id:65, number of threads:10, unprocessed:50 1008s # [unsorted] ===> pushed new thread with id:7, number of threads:10, unprocessed:51 1008s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:52 1008s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:53 1008s # [unsorted] ===> pushed new thread with id:6, number of threads:10, unprocessed:54 1008s # [unsorted] ===> pushed new thread with id:47, number of threads:10, unprocessed:55 1008s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:56 1008s # [unsorted] ===> pushed new thread with id:13, number of threads:10, unprocessed:57 1008s # [unsorted] ===> pushed new thread with id:25, number of threads:10, unprocessed:58 1008s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:59 1008s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:60 1008s # [unsorted] ===> pushed new thread with id:19, number of threads:10, unprocessed:61 1008s # [unsorted] ===> pushed new thread with id:75, number of threads:10, unprocessed:62 1008s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:63 1008s # [unsorted] ===> pushed new thread with id:12, number of threads:10, unprocessed:64 1008s # [unsorted] ===> pushed new thread with id:10, number of threads:10, unprocessed:65 1008s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:66 1008s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:67 1008s # [unsorted] ===> pushed new thread with id:4, number of threads:10, unprocessed:68 1008s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:69 1008s # [unsorted] ===> pushed new thread with id:6, number of threads:10, unprocessed:70 1008s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:71 1008s # [unsorted] ===> pushed new thread with id:97, number of threads:10, unprocessed:72 1008s # [unsorted] ===> pushed new thread with id:32, number of threads:10, unprocessed:73 1008s # [unsorted] ===> pushed new thread with id:61, number of threads:10, unprocessed:74 1008s # [unsorted] ===> pushed new thread with id:76, number of threads:10, unprocessed:75 1008s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:76 1008s # [unsorted] ===> pushed new thread with id:37, number of threads:10, unprocessed:77 1008s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:78 1008s # [unsorted] ===> pushed new thread with id:29, number of threads:10, unprocessed:79 1008s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:80 1008s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:81 1008s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:82 1008s # [unsorted] ===> pushed new thread with id:44, number of threads:10, unprocessed:83 1008s # [unsorted] ===> pushed new thread with id:27, number of threads:10, unprocessed:84 1008s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:85 1008s # [unsorted] ===> pushed new thread with id:23, number of threads:10, unprocessed:86 1008s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:87 1008s # [unsorted] ===> pushed new thread with id:8, number of threads:10, unprocessed:88 1008s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:89 1008s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:90 1008s ok 4 /threadpool/no-sort 1008s # [ sorted] ===> pushed new thread with id:25, number of threads:0, unprocessed:1 1008s # [ sorted] ===> pushed new thread with id:23, number of threads:0, unprocessed:2 1008s # [ sorted] ===> pushed new thread with id:51, number of threads:0, unprocessed:3 1008s # [ sorted] ===> pushed new thread with id:79, number of threads:0, unprocessed:4 1008s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:5 1008s # [ sorted] ===> pushed new thread with id:66, number of threads:0, unprocessed:6 1008s # [ sorted] ===> pushed new thread with id:38, number of threads:0, unprocessed:7 1008s # [ sorted] ===> pushed new thread with id:16, number of threads:0, unprocessed:8 1008s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:9 1008s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:10 1008s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:11 1008s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:12 1008s # [ sorted] ===> pushed new thread with id:49, number of threads:0, unprocessed:13 1008s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:14 1008s # [ sorted] ===> pushed new thread with id:16, number of threads:0, unprocessed:15 1008s # [ sorted] ===> pushed new thread with id:49, number of threads:0, unprocessed:16 1008s # [ sorted] ===> pushed new thread with id:65, number of threads:0, unprocessed:17 1008s # [ sorted] ===> pushed new thread with id:34, number of threads:0, unprocessed:18 1008s # [ sorted] ===> pushed new thread with id:6, number of threads:0, unprocessed:19 1008s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:20 1008s # [ sorted] ===> pushed new thread with id:22, number of threads:0, unprocessed:21 1008s # [ sorted] ===> pushed new thread with id:60, number of threads:0, unprocessed:22 1008s # [ sorted] ===> pushed new thread with id:38, number of threads:0, unprocessed:23 1008s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:24 1008s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:25 1008s # [ sorted] ===> pushed new thread with id:77, number of threads:0, unprocessed:26 1008s # [ sorted] ===> pushed new thread with id:77, number of threads:0, unprocessed:27 1008s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:28 1008s # [ sorted] ===> pushed new thread with id:8, number of threads:0, unprocessed:29 1008s # [ sorted] ===> pushed new thread with id:78, number of threads:0, unprocessed:30 1008s # [ sorted] ===> pushed new thread with id:58, number of threads:0, unprocessed:31 1008s # [ sorted] ===> pushed new thread with id:21, number of threads:0, unprocessed:32 1008s # [ sorted] ===> pushed new thread with id:33, number of threads:0, unprocessed:33 1008s # [ sorted] ===> pushed new thread with id:62, number of threads:0, unprocessed:34 1008s # [ sorted] ===> pushed new thread with id:12, number of threads:0, unprocessed:35 1008s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:36 1008s # [ sorted] ===> pushed new thread with id:67, number of threads:0, unprocessed:37 1008s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:38 1008s # [ sorted] ===> pushed new thread with id:19, number of threads:0, unprocessed:39 1008s # [ sorted] ===> pushed new thread with id:12, number of threads:0, unprocessed:40 1008s # [ sorted] ===> pushed new thread with id:16, number of threads:0, unprocessed:41 1008s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:42 1008s # [ sorted] ===> pushed new thread with id:38, number of threads:0, unprocessed:43 1008s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:44 1008s # [ sorted] ===> pushed new thread with id:34, number of threads:0, unprocessed:45 1008s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:46 1008s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:47 1008s # [ sorted] ===> pushed new thread with id:40, number of threads:0, unprocessed:48 1008s # [ sorted] ===> pushed new thread with id:14, number of threads:0, unprocessed:49 1008s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:50 1008s # [ sorted] ===> pushed new thread with id:2, number of threads:0, unprocessed:51 1008s # [ sorted] ===> pushed new thread with id:67, number of threads:0, unprocessed:52 1008s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:53 1008s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:54 1008s # [ sorted] ===> pushed new thread with id:78, number of threads:0, unprocessed:55 1008s # [ sorted] ===> pushed new thread with id:100, number of threads:0, unprocessed:56 1008s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:57 1008s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:58 1008s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:59 1008s # [ sorted] ===> pushed new thread with id:7, number of threads:0, unprocessed:60 1008s # [ sorted] ===> pushed new thread with id:57, number of threads:0, unprocessed:61 1008s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:62 1008s # [ sorted] ===> pushed new thread with id:8, number of threads:0, unprocessed:63 1008s # [ sorted] ===> pushed new thread with id:46, number of threads:0, unprocessed:64 1008s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:65 1008s # [ sorted] ===> pushed new thread with id:25, number of threads:0, unprocessed:66 1008s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:67 1008s # [ sorted] ===> pushed new thread with id:83, number of threads:0, unprocessed:68 1008s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:69 1008s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:70 1008s # [ sorted] ===> pushed new thread with id:81, number of threads:0, unprocessed:71 1008s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:72 1008s # [ sorted] ===> pushed new thread with id:16, number of threads:0, unprocessed:73 1008s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:74 1008s # [ sorted] ===> pushed new thread with id:23, number of threads:0, unprocessed:75 1008s # [ sorted] ===> pushed new thread with id:33, number of threads:0, unprocessed:76 1008s # [ sorted] ===> pushed new thread with id:73, number of threads:0, unprocessed:77 1008s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:78 1008s # [ sorted] ===> pushed new thread with id:34, number of threads:0, unprocessed:79 1008s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:80 1008s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:81 1008s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:82 1008s # [ sorted] ===> pushed new thread with id:58, number of threads:0, unprocessed:83 1008s # [ sorted] ===> pushed new thread with id:60, number of threads:0, unprocessed:84 1008s # [ sorted] ===> pushed new thread with id:14, number of threads:0, unprocessed:85 1008s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:86 1008s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:87 1008s # [ sorted] ===> pushed new thread with id:48, number of threads:0, unprocessed:88 1008s # [ sorted] ===> pushed new thread with id:38, number of threads:0, unprocessed:89 1008s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:90 1008s # [ sorted] ===> pushed new thread with id:14, number of threads:0, unprocessed:91 1008s # [ sorted] ===> pushed new thread with id:44, number of threads:0, unprocessed:92 1008s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:93 1008s # [ sorted] ===> pushed new thread with id:92, number of threads:0, unprocessed:94 1008s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:95 1008s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:96 1008s # [ sorted] ===> pushed new thread with id:41, number of threads:0, unprocessed:97 1008s # [ sorted] ===> pushed new thread with id:36, number of threads:0, unprocessed:98 1008s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:99 1008s # [ sorted] ===> pushed new thread with id:91, number of threads:0, unprocessed:100 1008s # Starting thread pool processing 1008s ok 5 /threadpool/sort 1008s ok 6 /threadpool/stop-unused-multiple 1008s # slow test /threadpool/stop-unused-multiple executed in 0.51 secs 1008s # Pool idle thread count: 0, unprocessed jobs: 47 1009s # Pool idle thread count: 0, unprocessed jobs: 0 1009s # Pool idle thread count: 0, unprocessed jobs: 0 1009s # Pool idle thread count: 10, unprocessed jobs: 0 1009s # Pool idle thread count: 10, unprocessed jobs: 0 1010s # Pool idle thread count: 10, unprocessed jobs: 0 1010s # Pool idle thread count: 10, unprocessed jobs: 0 1010s # Pool idle thread count: 10, unprocessed jobs: 0 1010s # Pool idle thread count: 10, unprocessed jobs: 0 1011s # Pool idle thread count: 10, unprocessed jobs: 0 1011s # Pool idle thread count: 10, unprocessed jobs: 0 1011s # Pool idle thread count: 10, unprocessed jobs: 0 1011s # Pool idle thread count: 10, unprocessed jobs: 0 1012s # Pool idle thread count: 10, unprocessed jobs: 0 1012s # Pool idle thread count: 10, unprocessed jobs: 0 1012s Executing: glib/thread-pool-slow.test 1012s # Pool idle thread count: 10, unprocessed jobs: 0 1012s # Pool idle thread count: 10, unprocessed jobs: 0 1013s # Pool idle thread count: 10, unprocessed jobs: 0 1013s # Pool idle thread count: 10, unprocessed jobs: 0 1013s # Pool idle thread count: 10, unprocessed jobs: 0 1013s # Pool idle thread count: 10, unprocessed jobs: 0 1014s # Pool idle thread count: 10, unprocessed jobs: 0 1014s # Pool idle thread count: 10, unprocessed jobs: 0 1014s # Pool idle thread count: 10, unprocessed jobs: 0 1014s # Pool idle thread count: 10, unprocessed jobs: 0 1015s # Pool idle thread count: 10, unprocessed jobs: 0 1015s # Pool idle thread count: 10, unprocessed jobs: 0 1015s # Pool idle thread count: 10, unprocessed jobs: 0 1015s # Pool idle thread count: 10, unprocessed jobs: 0 1016s # Pool idle thread count: 10, unprocessed jobs: 0 1016s # Pool idle thread count: 10, unprocessed jobs: 0 1016s # Pool idle thread count: 10, unprocessed jobs: 0 1016s # Pool idle thread count: 10, unprocessed jobs: 0 1017s # Pool idle thread count: 10, unprocessed jobs: 0 1017s # Pool idle thread count: 10, unprocessed jobs: 0 1017s Executing: glib/thread-pool-slow.test 1017s # Pool idle thread count: 9, unprocessed jobs: 2 1017s # Pool idle thread count: 9, unprocessed jobs: 2 1017s # Pool idle thread count: 8, unprocessed jobs: 0 1017s # Pool idle thread count: 8, unprocessed jobs: 0 1018s # Pool idle thread count: 10, unprocessed jobs: 0 1018s # Pool idle thread count: 10, unprocessed jobs: 0 1018s # Pool idle thread count: 10, unprocessed jobs: 0 1018s # Pool idle thread count: 10, unprocessed jobs: 0 1019s # Pool idle thread count: 10, unprocessed jobs: 0 1019s # Pool idle thread count: 10, unprocessed jobs: 0 1019s # Pool idle thread count: 2, unprocessed jobs: 0 1019s # Pool idle thread count: 2, unprocessed jobs: 0 1020s # Pool idle thread count: 2, unprocessed jobs: 0 1020s # Pool idle thread count: 2, unprocessed jobs: 0 1020s # Pool idle thread count: 2, unprocessed jobs: 0 1020s # Pool idle thread count: 2, unprocessed jobs: 0 1021s # Pool idle thread count: 2, unprocessed jobs: 0 1021s # Pool idle thread count: 2, unprocessed jobs: 0 1021s # Pool idle thread count: 2, unprocessed jobs: 0 1021s # Pool idle thread count: 2, unprocessed jobs: 0 1022s # Pool idle thread count: 2, unprocessed jobs: 0 1022s # Pool idle thread count: 2, unprocessed jobs: 0 1022s Executing: glib/thread-pool-slow.test 1022s # Pool idle thread count: 2, unprocessed jobs: 0 1022s # Pool idle thread count: 2, unprocessed jobs: 0 1023s # Pool idle thread count: 2, unprocessed jobs: 0 1023s # Pool idle thread count: 2, unprocessed jobs: 0 1023s # Pool idle thread count: 2, unprocessed jobs: 0 1023s # Pool idle thread count: 2, unprocessed jobs: 0 1024s # Pool idle thread count: 2, unprocessed jobs: 0 1024s # Pool idle thread count: 2, unprocessed jobs: 0 1024s # Pool idle thread count: 2, unprocessed jobs: 0 1024s # Pool idle thread count: 2, unprocessed jobs: 0 1025s # Pool idle thread count: 2, unprocessed jobs: 0 1025s # Pool idle thread count: 2, unprocessed jobs: 0 1025s # Pool idle thread count: 2, unprocessed jobs: 0 1025s # Pool idle thread count: 2, unprocessed jobs: 0 1026s # Pool idle thread count: 2, unprocessed jobs: 0 1026s # Pool idle thread count: 2, unprocessed jobs: 0 1026s # Pool idle thread count: 2, unprocessed jobs: 0 1026s # Pool idle thread count: 2, unprocessed jobs: 0 1027s # Pool idle thread count: 2, unprocessed jobs: 0 1027s # Pool idle thread count: 2, unprocessed jobs: 0 1027s Executing: glib/thread-pool-slow.test 1027s # Pool idle thread count: 2, unprocessed jobs: 0 1027s # Pool idle thread count: 2, unprocessed jobs: 0 1028s ok 7 /threadpool/idle-time 1028s # slow test /threadpool/idle-time executed in 19.53 secs 1028s # End of threadpool tests 1028s PASS: glib/thread-pool-slow.test 1028s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.5s; system=0.0s; maxrss=8192 1028s autopkgtest [21:54:55]: test thread-pool-slow: -----------------------] 1029s thread-pool-slow PASS 1029s autopkgtest [21:54:56]: test thread-pool-slow: - - - - - - - - - - results - - - - - - - - - - 1029s autopkgtest [21:54:56]: test threadtests: preparing testbed 1029s Reading package lists... 1029s Building dependency tree... 1029s Reading state information... 1030s Solving dependencies... 1030s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1030s autopkgtest [21:54:57]: test threadtests: [----------------------- 1031s Running test: glib/threadtests.test 1031s TAP version 14 1031s # random seed: R02Sa04179eba498f98b9a23d84ac49b8714 1031s 1..5 1031s # Start of GObject tests 1031s ok 1 /GObject/threaded-object-init 1032s ok 2 /GObject/threaded-weak-ref 1032s # slow test /GObject/threaded-weak-ref executed in 0.89 secs 1032s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2394 1032s # /GObject/threaded-toggle-notify summary: Test that toggle reference notifications can be changed safely from another (the main) thread without causing the notifying thread to abort 1032s ok 3 /GObject/threaded-toggle-notify 1032s ok 4 /GObject/threaded-g-pointer-bit-unlock-and-set 1032s # Start of threaded-weak-ref tests 1032s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 1032s # /GObject/threaded-weak-ref/on-finalization summary: Test that a weak ref added by another thread during dispose of a GObject is cleared during finalisation. Use on_weak_ref_disposed() to synchronize the other thread with the dispose vfunc. 1032s ok 5 /GObject/threaded-weak-ref/on-finalization 1032s # End of threaded-weak-ref tests 1032s # End of GObject tests 1032s PASS: glib/threadtests.test 1032s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.6s; system=0.5s; maxrss=4096 1032s autopkgtest [21:54:59]: test threadtests: -----------------------] 1033s autopkgtest [21:55:00]: test threadtests: - - - - - - - - - - results - - - - - - - - - - 1033s threadtests PASS 1033s autopkgtest [21:55:00]: test timeout: preparing testbed 1033s Reading package lists... 1033s Building dependency tree... 1033s Reading state information... 1033s Solving dependencies... 1033s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1034s autopkgtest [21:55:01]: test timeout: [----------------------- 1034s Running test: glib/timeout.test 1034s TAP version 14 1034s # random seed: R02Scfb30914732c19fd29a5c908b31eacbd 1034s 1..5 1034s # Start of timeout tests 1034s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642052 1037s ok 1 /timeout/seconds 1037s # slow test /timeout/seconds executed in 2.10 secs 1039s ok 2 /timeout/seconds-once 1039s # slow test /timeout/seconds-once executed in 2.10 secs 1039s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1600 1039s Executing: glib/timeout.test 1041s ok 3 /timeout/weeks-overflow 1041s # slow test /timeout/weeks-overflow executed in 2.10 secs 1041s ok 4 /timeout/far-future-ready-time 1044s Executing: glib/timeout.test 1049s Executing: glib/timeout.test 1051s ok 5 /timeout/rounding 1051s # slow test /timeout/rounding executed in 10.64 secs 1051s # End of timeout tests 1051s PASS: glib/timeout.test 1051s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=2048 1052s autopkgtest [21:55:19]: test timeout: -----------------------] 1052s timeout PASS 1052s autopkgtest [21:55:19]: test timeout: - - - - - - - - - - results - - - - - - - - - - 1053s autopkgtest [21:55:20]: test timer: preparing testbed 1053s Reading package lists... 1053s Building dependency tree... 1053s Reading state information... 1053s Solving dependencies... 1053s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1054s autopkgtest [21:55:21]: test timer: [----------------------- 1054s Running test: glib/timer.test 1054s TAP version 14 1054s # random seed: R02S815937d6c0b38dfea272e99a6d6e473d 1054s 1..10 1054s # Start of timer tests 1054s ok 1 /timer/basic 1054s ok 2 /timer/stop 1054s ok 3 /timer/continue 1054s ok 4 /timer/reset 1054s ok 5 /timer/is_active 1054s # End of timer tests 1054s # Start of timeval tests 1054s ok 6 /timeval/add 1054s ok 7 /timeval/from-iso8601 1054s ok 8 /timeval/to-iso8601 1054s # Start of to-iso8601 tests 1054s ok 9 /timeval/to-iso8601/overflow 1054s # End of to-iso8601 tests 1054s # End of timeval tests 1054s # Start of usleep tests 1054s ok 10 /usleep/with-zero-wait 1054s # End of usleep tests 1054s PASS: glib/timer.test 1054s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=2048 1054s autopkgtest [21:55:21]: test timer: -----------------------] 1055s autopkgtest [21:55:22]: test timer: - - - - - - - - - - results - - - - - - - - - - 1055s timer PASS 1055s autopkgtest [21:55:22]: test 1065022-futureproofing: preparing testbed 1075s Creating nova instance adt-resolute-ppc64el-glib2.0-20260203-213747-juju-7f2275-prod-proposed-migration-environment-2-17649f3b-67f9-44cf-8c76-df34b2cd2190 from image adt/ubuntu-resolute-ppc64el-server-20260203.img (UUID 36e1410e-0a72-4cd6-affd-580c415d80cb)... 1118s autopkgtest [21:56:25]: testbed dpkg architecture: ppc64el 1118s autopkgtest [21:56:25]: testbed apt version: 3.1.14 1118s autopkgtest [21:56:25]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1118s autopkgtest [21:56:25]: testbed release detected to be: resolute 1119s autopkgtest [21:56:26]: updating testbed package index (apt update) 1119s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 1119s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 1119s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 1119s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 1120s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1343 kB] 1120s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [27.9 kB] 1120s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [242 kB] 1120s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5260 B] 1120s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [289 kB] 1120s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [1151 kB] 1120s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [17.8 kB] 1120s Fetched 3201 kB in 1s (3628 kB/s) 1121s Reading package lists... 1122s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 1122s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 1122s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 1122s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 1123s Reading package lists... 1123s Reading package lists... 1123s Building dependency tree... 1123s Reading state information... 1123s Calculating upgrade... 1123s The following packages will be upgraded: 1123s libpcre2-8-0 1123s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1123s Need to get 325 kB of archives. 1123s After this operation, 0 B of additional disk space will be used. 1123s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpcre2-8-0 ppc64el 10.46-1build1 [325 kB] 1123s dpkg-preconfigure: unable to re-open stdin: No such file or directory 1123s Fetched 325 kB in 0s (14.3 MB/s) 1124s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 1124s Preparing to unpack .../libpcre2-8-0_10.46-1build1_ppc64el.deb ... 1124s Unpacking libpcre2-8-0:ppc64el (10.46-1build1) over (10.46-1) ... 1124s Setting up libpcre2-8-0:ppc64el (10.46-1build1) ... 1124s Processing triggers for libselinux1:ppc64el (3.9-4) ... 1124s Processing triggers for libc-bin (2.42-2ubuntu4) ... 1124s autopkgtest [21:56:31]: upgrading testbed (apt dist-upgrade and autopurge) 1124s Reading package lists... 1125s Building dependency tree... 1125s Reading state information... 1125s Calculating upgrade... 1125s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1125s Reading package lists... 1125s Building dependency tree... 1125s Reading state information... 1125s Solving dependencies... 1125s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1128s Reading package lists... 1128s Building dependency tree... 1128s Reading state information... 1128s Solving dependencies... 1128s The following NEW packages will be installed: 1128s dconf-gsettings-backend dconf-service dpkg-repack gsettings-desktop-schemas 1128s libdconf1 1128s 0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded. 1128s Need to get 155 kB of archives. 1128s After this operation, 833 kB of additional disk space will be used. 1128s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libdconf1 ppc64el 0.49.0-4 [45.7 kB] 1128s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el dconf-service ppc64el 0.49.0-4 [31.6 kB] 1128s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el dconf-gsettings-backend ppc64el 0.49.0-4 [27.3 kB] 1128s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el dpkg-repack all 1.54build1 [11.2 kB] 1128s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el gsettings-desktop-schemas all 50~alpha-1ubuntu1 [38.9 kB] 1128s Fetched 155 kB in 0s (10.5 MB/s) 1128s Selecting previously unselected package libdconf1:ppc64el. 1128s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82008 files and directories currently installed.) 1128s Preparing to unpack .../libdconf1_0.49.0-4_ppc64el.deb ... 1128s Unpacking libdconf1:ppc64el (0.49.0-4) ... 1128s Selecting previously unselected package dconf-service. 1128s Preparing to unpack .../dconf-service_0.49.0-4_ppc64el.deb ... 1128s Unpacking dconf-service (0.49.0-4) ... 1128s Selecting previously unselected package dconf-gsettings-backend:ppc64el. 1128s Preparing to unpack .../dconf-gsettings-backend_0.49.0-4_ppc64el.deb ... 1128s Unpacking dconf-gsettings-backend:ppc64el (0.49.0-4) ... 1128s Selecting previously unselected package dpkg-repack. 1128s Preparing to unpack .../dpkg-repack_1.54build1_all.deb ... 1128s Unpacking dpkg-repack (1.54build1) ... 1128s Selecting previously unselected package gsettings-desktop-schemas. 1128s Preparing to unpack .../gsettings-desktop-schemas_50~alpha-1ubuntu1_all.deb ... 1128s Unpacking gsettings-desktop-schemas (50~alpha-1ubuntu1) ... 1128s Setting up dpkg-repack (1.54build1) ... 1128s Setting up libdconf1:ppc64el (0.49.0-4) ... 1128s Setting up dconf-service (0.49.0-4) ... 1128s Setting up dconf-gsettings-backend:ppc64el (0.49.0-4) ... 1128s Setting up gsettings-desktop-schemas (50~alpha-1ubuntu1) ... 1128s Processing triggers for man-db (2.13.1-1) ... 1129s Processing triggers for libglib2.0-0t64:ppc64el (2.86.3-4) ... 1129s Processing triggers for libc-bin (2.42-2ubuntu4) ... 1136s autopkgtest [21:56:43]: test 1065022-futureproofing: [----------------------- 1136s + export DEBIAN_FRONTEND=noninteractive 1136s + n=0 1136s + failed=0 1136s + binary_package=libglib2.0-0t64 1136s + future_binary_package=libglib2.0-0xyz 1136s + pwd 1136s + srcdir=/tmp/autopkgtest.lRjasG/build.eEs/src 1136s + mktemp -d 1136s + tmpdir=/tmp/tmp.7ygDo7I6sX 1136s + cd /tmp/tmp.7ygDo7I6sX 1136s + exec 1136s + [ -e /tmp/autopkgtest.lRjasG/build.eEs/src/debian/tests/manual/local-1065022.sources ] 1136s + dpkg-query -W dpkg-repack 1136s dpkg-repack 1.54build1 1136s + dpkg-query -s libglib2.0-0t64 1136s Package: libglib2.0-0t64 1136s Status: install ok installed 1136s Priority: important 1136s Section: libs 1136s Installed-Size: 6018 1136s Maintainer: Ubuntu Developers 1136s Architecture: ppc64el 1136s Multi-Arch: same 1136s Source: glib2.0 1136s Version: 2.86.3-4 1136s Replaces: libglib2.0-0 (<< 2.80.0-7~) 1136s Provides: libgio-2.0-0 (= 2.86.3-4), libglib-2.0-0 (= 2.86.3-4), libglib2.0-0 (= 2.86.3-4), libgmodule-2.0-0 (= 2.86.3-4), libgobject-2.0-0 (= 2.86.3-4), libgthread-2.0-0 (= 2.86.3-4) 1136s Depends: libatomic1 (>= 4.8), libc6 (>= 2.38), libffi8 (>= 3.4), libmount1 (>= 2.40~rc2), libpcre2-8-0 (>= 10.22), libselinux1 (>= 3.1~), zlib1g (>= 1:1.2.2) 1136s Recommends: libglib2.0-data, shared-mime-info, xdg-user-dirs 1136s Suggests: low-memory-monitor 1136s Breaks: gnome-shell (<< 44.9-2~), libglib2.0-0 (<< 2.80.0-7~) 1136s Description: GLib library of C routines 1136s GLib is a library containing many useful C routines for things such 1136s as trees, hashes, lists, and strings. It is a useful general-purpose 1136s C library used by projects such as GTK+, GIMP, and GNOME. 1136s . 1136s This package contains the shared libraries. 1136s Original-Maintainer: Debian GNOME Maintainers 1136s Homepage: https://gitlab.gnome.org/GNOME/glib 1136s + dpkg-query -W -f ${Version} libglib2.0-0t64 1136s + binary_version=2.86.3-4 1136s + dpkg-repack --generate libglib2.0-0t64 1136s dpkg-repack: warning: unknown information field 'Original-Maintainer' in input data in stanza in dpkg's status file 1136s dpkg-repack: info: created dpkg-repack.libglib2.0-0t64.EjGDHl for libglib2.0-0t64 1136s dpkg-repack: info: to build use: "dpkg-deb --build dpkg-repack.libglib2.0-0t64.EjGDHl ." 1136s + grep -q ^Breaks: dpkg-repack.libglib2.0-0t64.EjGDHl/DEBIAN/control 1136s + grep -q ^Provides: dpkg-repack.libglib2.0-0t64.EjGDHl/DEBIAN/control 1136s + grep -q ^Replaces: dpkg-repack.libglib2.0-0t64.EjGDHl/DEBIAN/control 1136s + env binary_package=libglib2.0-0t64 binary_version=2.86.3-4 future_binary_package=libglib2.0-0xyz perl -p -i -e s/^Package:.*$/Package: $ENV{future_binary_package}/; -e s/^(Breaks:.*)$/$1, $ENV{binary_package}/; -e s/^(Provides:.*)$/$1, $ENV{binary_package} (= $ENV{binary_version})/; -e s/^(Replaces:.*)$/$1, $ENV{binary_package}/; dpkg-repack.libglib2.0-0t64.EjGDHl/DEBIAN/control 1136s + dpkg-deb --build dpkg-repack.libglib2.0-0t64.EjGDHl libglib2.0-0xyz.deb 1136s dpkg-deb: building package 'libglib2.0-0xyz' in 'libglib2.0-0xyz.deb'. 1138s + dpkg-deb --info libglib2.0-0xyz.deb 1138s new Debian package, version 2.0. 1138s size 1849174 bytes: control archive=25742 bytes. 1138s 1220 bytes, 24 lines control 1138s 1184 bytes, 14 lines md5sums 1138s 1328 bytes, 44 lines * postinst #!/bin/sh 1138s 2582 bytes, 87 lines * postrm #!/bin/sh 1138s 2408 bytes, 53 lines * preinst #!/bin/sh 1138s 466 bytes, 10 lines shlibs 1138s 172677 bytes, 4529 lines symbols 1138s 176 bytes, 4 lines triggers 1138s Package: libglib2.0-0xyz 1138s Source: glib2.0 1138s Version: 2.86.3-4 1138s Architecture: ppc64el 1138s Maintainer: Ubuntu Developers 1138s Installed-Size: 6018 1138s Depends: libatomic1 (>= 4.8), libc6 (>= 2.38), libffi8 (>= 3.4), libmount1 (>= 2.40~rc2), libpcre2-8-0 (>= 10.22), libselinux1 (>= 3.1~), zlib1g (>= 1:1.2.2) 1138s Recommends: libglib2.0-data, shared-mime-info, xdg-user-dirs 1138s Suggests: low-memory-monitor 1138s Breaks: gnome-shell (<< 44.9-2~), libglib2.0-0 (<< 2.80.0-7~), libglib2.0-0t64 1138s Replaces: libglib2.0-0 (<< 2.80.0-7~), libglib2.0-0t64 1138s Provides: libgio-2.0-0 (= 2.86.3-4), libglib-2.0-0 (= 2.86.3-4), libglib2.0-0 (= 2.86.3-4), libgmodule-2.0-0 (= 2.86.3-4), libgobject-2.0-0 (= 2.86.3-4), libgthread-2.0-0 (= 2.86.3-4), libglib2.0-0t64 (= 2.86.3-4) 1138s Section: libs 1138s Priority: important 1138s Multi-Arch: same 1138s Homepage: https://gitlab.gnome.org/GNOME/glib 1138s Description: GLib library of C routines 1138s GLib is a library containing many useful C routines for things such 1138s as trees, hashes, lists, and strings. It is a useful general-purpose 1138s C library used by projects such as GTK+, GIMP, and GNOME. 1138s . 1138s This package contains the shared libraries. 1138s . 1138s (Repackaged on Tue, 03 Feb 2026 21:56:42 +0000 by dpkg-repack.) 1138s + dpkg-deb --contents libglib2.0-0xyz.deb 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/lib/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/lib/powerpc64le-linux-gnu/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/lib/powerpc64le-linux-gnu/gio/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/lib/powerpc64le-linux-gnu/gio/modules/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/lib/powerpc64le-linux-gnu/glib-2.0/ 1138s -rwxr-xr-x root/root 67832 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/glib-2.0/gio-launch-desktop 1138s -rwxr-xr-x root/root 67832 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/glib-2.0/gio-querymodules 1138s -rwxr-xr-x root/root 67872 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/glib-2.0/glib-compile-schemas 1138s -rw-r--r-- root/root 2756184 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgio-2.0.so.0.8600.3 1138s -rw-r--r-- root/root 1904216 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libglib-2.0.so.0.8600.3 1138s -rw-r--r-- root/root 67640 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgmodule-2.0.so.0.8600.3 1138s -rw-r--r-- root/root 592184 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgobject-2.0.so.0.8600.3 1138s -rw-r--r-- root/root 67600 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgthread-2.0.so.0.8600.3 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/doc/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/doc/libglib2.0-0t64/ 1138s -rw-r--r-- root/root 258310 2025-12-08 15:46 ./usr/share/doc/libglib2.0-0t64/NEWS.gz 1138s -rw-r--r-- root/root 1703 2026-01-01 12:59 ./usr/share/doc/libglib2.0-0t64/README.Debian 1138s -rw-r--r-- root/root 3248 2025-12-08 15:46 ./usr/share/doc/libglib2.0-0t64/README.md 1138s -rw-r--r-- root/root 39086 2026-01-01 12:59 ./usr/share/doc/libglib2.0-0t64/changelog.Debian.gz 1138s -rw-r--r-- root/root 55103 2026-01-01 12:59 ./usr/share/doc/libglib2.0-0t64/copyright 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/glib-2.0/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/glib-2.0/schemas/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/lintian/ 1138s drwxr-xr-x root/root 0 2026-02-03 21:56 ./usr/share/lintian/overrides/ 1138s -rw-r--r-- root/root 520 2026-01-01 12:59 ./usr/share/lintian/overrides/libglib2.0-0t64 1138s lrwxrwxrwx root/root 0 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgio-2.0.so.0 -> libgio-2.0.so.0.8600.3 1138s lrwxrwxrwx root/root 0 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libglib-2.0.so.0 -> libglib-2.0.so.0.8600.3 1138s lrwxrwxrwx root/root 0 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.8600.3 1138s lrwxrwxrwx root/root 0 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgobject-2.0.so.0 -> libgobject-2.0.so.0.8600.3 1138s lrwxrwxrwx root/root 0 2026-01-01 12:59 ./usr/lib/powerpc64le-linux-gnu/libgthread-2.0.so.0 -> libgthread-2.0.so.0.8600.3 1138s + apt-get -y install ./libglib2.0-0xyz.deb dconf-gsettings-backend gsettings-desktop-schemas 1138s Reading package lists... 1138s Building dependency tree... 1138s Reading state information... 1138s dconf-gsettings-backend is already the newest version (0.49.0-4). 1138s gsettings-desktop-schemas is already the newest version (50~alpha-1ubuntu1). 1138s Solving dependencies... 1138s The following additional packages will be installed: 1138s xdg-user-dirs 1138s Suggested packages: 1138s low-memory-monitor 1138s The following packages will be REMOVED: 1138s libglib2.0-0t64 1138s The following NEW packages will be installed: 1138s libglib2.0-0xyz xdg-user-dirs 1138s 0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded. 1138s Need to get 20.9 kB/1870 kB of archives. 1138s After this operation, 213 kB of additional disk space will be used. 1138s Get:1 /tmp/tmp.7ygDo7I6sX/libglib2.0-0xyz.deb libglib2.0-0xyz ppc64el 2.86.3-4 [1849 kB] 1138s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el xdg-user-dirs ppc64el 0.19-1 [20.9 kB] 1138s Fetched 20.9 kB in 0s (273 kB/s) 1139s dpkg: libglib2.0-0t64:ppc64el: dependency problems, but removing anyway as you requested: 1139s udisks2 depends on libglib2.0-0t64 (>= 2.80.0). 1139s shared-mime-info depends on libglib2.0-0t64 (>= 2.76.0). 1139s python3-gi depends on libglib2.0-0t64 (>= 2.86.0-7~). 1139s python3-dbus depends on libglib2.0-0t64 (>= 2.16.0). 1139s netplan.io depends on libglib2.0-0t64 (>= 2.70.0). 1139s netplan-generator depends on libglib2.0-0t64 (>= 2.16.0). 1139s libxmlb2:ppc64el depends on libglib2.0-0t64 (>= 2.54.0). 1139s libvolume-key1:ppc64el depends on libglib2.0-0t64 (>= 2.18.0). 1139s libudisks2-0:ppc64el depends on libglib2.0-0t64 (>= 2.83.0). 1139s libqrtr-glib0:ppc64el depends on libglib2.0-0t64 (>= 2.56). 1139s libqmi-proxy depends on libglib2.0-0t64 (>= 2.30.0). 1139s libqmi-glib5:ppc64el depends on libglib2.0-0t64 (>= 2.54.0). 1139s libpolkit-gobject-1-0:ppc64el depends on libglib2.0-0t64 (>= 2.38.0). 1139s libpolkit-agent-1-0:ppc64el depends on libglib2.0-0t64 (>= 2.38.0). 1139s libnetplan1:ppc64el depends on libglib2.0-0t64 (>= 2.76.0). 1139s libmm-glib0:ppc64el depends on libglib2.0-0t64 (>= 2.62.0). 1139s libmbim-proxy depends on libglib2.0-0t64 (>= 2.56). 1139s libmbim-glib4:ppc64el depends on libglib2.0-0t64 (>= 2.56). 1139s libjson-glib-1.0-0:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s libjcat1:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s libgudev-1.0-0:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s libgirepository-2.0-0:ppc64el depends on libglib2.0-0t64 (= 2.86.3-4). 1139s libfwupd3:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s libdconf1:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s libblockdev3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-utils3:ppc64el depends on libglib2.0-0t64 (>= 2.76.0). 1139s libblockdev-swap3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-smart3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-part3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-nvme3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-mdraid3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-loop3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-fs3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s libblockdev-crypto3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2). 1139s gir1.2-glib-2.0:ppc64el depends on libglib2.0-0t64 (= 2.86.3-4). 1139s fwupd depends on libglib2.0-0t64 (>= 2.80.0). 1139s dconf-service depends on libglib2.0-0t64 (>= 2.83.0). 1139s dconf-gsettings-backend:ppc64el depends on libglib2.0-0t64 (>= 2.80.0). 1139s bolt depends on libglib2.0-0t64 (>= 2.80.0). 1139s 1139s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82075 files and directories currently installed.) 1139s Removing libglib2.0-0t64:ppc64el (2.86.3-4) ... 1139s Selecting previously unselected package libglib2.0-0xyz:ppc64el. 1139s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82056 files and directories currently installed.) 1139s Preparing to unpack .../libglib2.0-0xyz.deb ... 1139s Unpacking libglib2.0-0xyz:ppc64el (2.86.3-4) ... 1139s Selecting previously unselected package xdg-user-dirs. 1139s Preparing to unpack .../xdg-user-dirs_0.19-1_ppc64el.deb ... 1139s Unpacking xdg-user-dirs (0.19-1) ... 1139s Setting up xdg-user-dirs (0.19-1) ... 1139s Created symlink '/etc/systemd/user/graphical-session-pre.target.wants/xdg-user-dirs.service' → '/usr/lib/systemd/user/xdg-user-dirs.service'. 1139s Setting up libglib2.0-0xyz:ppc64el (2.86.3-4) ... 1139s Processing triggers for libc-bin (2.42-2ubuntu4) ... 1139s Processing triggers for man-db (2.13.1-1) ... 1140s + assert test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1140s + n=1 1140s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1140s + echo ok 1 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1140s + assert test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1140s + n=2 1140s + test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1140s + echo ok 2 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1140s ok 1 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1140s ok 2 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1140s ok 3 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s ok 4 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s ok 5 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s ok 6 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + assert test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + n=3 1140s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + echo ok 3 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + assert test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + n=4 1140s + test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + echo ok 4 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1140s + assert test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + n=5 1140s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + echo ok 5 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + assert test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + n=6 1140s + test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + echo ok 6 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1140s + apt-get -y purge libglib2.0-0t64 1140s Reading package lists... 1140s Building dependency tree... 1140s Reading state information... 1140s Solving dependencies... 1140s The following packages will be REMOVED: 1140s libglib2.0-0t64* 1140s 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. 1140s After this operation, 0 B of additional disk space will be used. 1141s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82090 files and directories currently installed.) 1141s Purging configuration files for libglib2.0-0t64:ppc64el (2.86.3-4) ... 1141s ok 7 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1141s ok 8 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1141s ok 9 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s ok 10 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s ok 11 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s ok 12 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + assert test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1141s + n=7 1141s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1141s + echo ok 7 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1141s + assert test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1141s + n=8 1141s + test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1141s + echo ok 8 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1141s + assert test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + n=9 1141s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + echo ok 9 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + assert test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + n=10 1141s + test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + echo ok 10 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1141s + assert test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + n=11 1141s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + echo ok 11 - test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + assert test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + n=12 1141s + test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + echo ok 12 - test -s /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1141s + apt-get -y purge libglib2.0-0xyz 1141s Reading package lists... 1141s Building dependency tree... 1141s Reading state information... 1141s Solving dependencies... 1141s The following additional packages will be installed: 1141s libglib2.0-0t64 1141s Suggested packages: 1141s low-memory-monitor 1141s The following packages will be REMOVED: 1141s libglib2.0-0xyz* 1141s The following NEW packages will be installed: 1141s libglib2.0-0t64 1141s 0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded. 1141s Need to get 1849 kB of archives. 1141s After this operation, 0 B of additional disk space will be used. 1141s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libglib2.0-0t64 ppc64el 2.86.3-4 [1849 kB] 1142s Fetched 1849 kB in 0s (6340 kB/s) 1142s dpkg: libglib2.0-0xyz:ppc64el: dependency problems, but removing anyway as you requested: 1142s udisks2 depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s shared-mime-info depends on libglib2.0-0t64 (>= 2.76.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s python3-gi depends on libglib2.0-0t64 (>= 2.86.0-7~); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s python3-dbus depends on libglib2.0-0t64 (>= 2.16.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s netplan.io depends on libglib2.0-0t64 (>= 2.70.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s netplan-generator depends on libglib2.0-0t64 (>= 2.16.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libxmlb2:ppc64el depends on libglib2.0-0t64 (>= 2.54.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libvolume-key1:ppc64el depends on libglib2.0-0t64 (>= 2.18.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libudisks2-0:ppc64el depends on libglib2.0-0t64 (>= 2.83.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libqrtr-glib0:ppc64el depends on libglib2.0-0t64 (>= 2.56); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libqmi-proxy depends on libglib2.0-0t64 (>= 2.30.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libqmi-glib5:ppc64el depends on libglib2.0-0t64 (>= 2.54.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libpolkit-gobject-1-0:ppc64el depends on libglib2.0-0t64 (>= 2.38.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libpolkit-agent-1-0:ppc64el depends on libglib2.0-0t64 (>= 2.38.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libnetplan1:ppc64el depends on libglib2.0-0t64 (>= 2.76.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libmm-glib0:ppc64el depends on libglib2.0-0t64 (>= 2.62.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libmbim-proxy depends on libglib2.0-0t64 (>= 2.56); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libmbim-glib4:ppc64el depends on libglib2.0-0t64 (>= 2.56); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libjson-glib-1.0-0:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libjcat1:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libgudev-1.0-0:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libgirepository-2.0-0:ppc64el depends on libglib2.0-0t64 (= 2.86.3-4); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libfwupd3:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libdconf1:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-utils3:ppc64el depends on libglib2.0-0t64 (>= 2.76.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-swap3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-smart3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-part3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-nvme3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-mdraid3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-loop3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-fs3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s libblockdev-crypto3:ppc64el depends on libglib2.0-0t64 (>= 2.42.2); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s gir1.2-glib-2.0:ppc64el depends on libglib2.0-0t64 (= 2.86.3-4); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s fwupd depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s dconf-service depends on libglib2.0-0t64 (>= 2.83.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s dconf-gsettings-backend:ppc64el depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s bolt depends on libglib2.0-0t64 (>= 2.80.0); however: 1142s Package libglib2.0-0t64 is not installed. 1142s Package libglib2.0-0xyz:ppc64el which provides libglib2.0-0t64 is to be removed. 1142s 1142s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82090 files and directories currently installed.) 1142s Removing libglib2.0-0xyz:ppc64el (2.86.3-4) ... 1142s Selecting previously unselected package libglib2.0-0t64:ppc64el. 1142s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82071 files and directories currently installed.) 1142s Preparing to unpack .../libglib2.0-0t64_2.86.3-4_ppc64el.deb ... 1142s Unpacking libglib2.0-0t64:ppc64el (2.86.3-4) ... 1142s Setting up libglib2.0-0t64:ppc64el (2.86.3-4) ... 1142s Processing triggers for libc-bin (2.42-2ubuntu4) ... 1143s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 82090 files and directories currently installed.) 1143s Purging configuration files for libglib2.0-0xyz:ppc64el (2.86.3-4) ... 1143s not ok 13 - should not have succeeded: test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1143s not ok 14 - should not have succeeded: test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1143s not ok 15 - should not have succeeded: test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1143s not ok 16 - should not have succeeded: test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1143s 1..16 1143s + assert_not test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1143s + n=13 1143s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1143s + echo not ok 13 - should not have succeeded: test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1143s + failed=1 1143s + assert_not test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1143s + n=14 1143s + test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1143s + echo not ok 14 - should not have succeeded: test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1143s + failed=1 1143s + assert_not test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1143s + n=15 1143s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1143s + echo not ok 15 - should not have succeeded: test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/libdconfsettings.so 1143s + failed=1 1143s + assert_not test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1143s + n=16 1143s + test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1143s + echo not ok 16 - should not have succeeded: test -e /usr/lib/powerpc64le-linux-gnu/gio/modules/giomodule.cache 1143s + failed=1 1143s + echo 1..16 1143s + exit 1 1143s autopkgtest [21:56:50]: test 1065022-futureproofing: -----------------------] 1143s 1065022-futureproofing FLAKY non-zero exit status 1 1143s autopkgtest [21:56:50]: test 1065022-futureproofing: - - - - - - - - - - results - - - - - - - - - - 1144s autopkgtest [21:56:51]: @@@@@@@@@@@@@@@@@@@@ summary 1144s build PASS (superficial) 1144s build-static PASS (superficial) 1144s girepository-tools PASS (superficial) 1144s libgio-2.0-dev-bin PASS (superficial) 1144s libglib2.0-dev PASS (superficial) 1144s installed-tests PASS 1144s closure-refcount PASS 1144s debugcontroller PASS 1144s gdbus-server-auth PASS 1144s gdbus-threading PASS 1144s gmenumodel PASS 1144s mainloop PASS 1144s memory-monitor-dbus PASS 1144s socket PASS 1144s testfilemonitor PASS 1144s thread-pool-slow PASS 1144s threadtests PASS 1144s timeout PASS 1144s timer PASS 1144s 1065022-futureproofing FLAKY non-zero exit status 1